[英]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
不在任何命名空間中 Scalar
和Hello::Scalar
具有相同的'名稱'' 標量 ' 我嘗試了一些typedef或使用沒有任何結果的關鍵字...
namespace Hello {
typedef ::Scalar Scalar;
}
應該可以。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.