簡體   English   中英

在C ++中的名稱空間內重新聲明全局類型

[英]Re-declare a global type inside a namespace in C++

Scalar類型聲明為在文件type.h中的任何命名空間之外

typedef float Scalar;

我想在文件hello.h中的名稱空間Hello中重新聲明此類型:

namespace Hello 
{
     // definition of a type Hello::Scalar
     // that refers to the Scalar in type.h 
}

這樣,在名稱空間Hello中的任何地方,類型Hello::Scalar引用了hello.h中聲明的那個 ,后者引用了type.h (它是float )中聲明的Scalar

如何實現是通過確保:

  • 第一個Scalar不在任何命名空間中
  • ScalarHello::Scalar具有相同的'名稱'' 標量 '

我嘗試了一些typedef使用沒有任何結果的關鍵字...

namespace Hello {

    typedef ::Scalar Scalar;
}

應該可以。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM