[英]const type to const alias in C++11
我正在使用包含在Xcode 4.6.2(4H1003)中的Clang。
Apple LLVM version 4.2 (clang-425.0.28) (based on LLVM 3.2svn)
目前,我的編譯器不會為此代碼生成編譯錯誤。
using AA = int const;
static AA const aa = 0;
因為我不熟悉准確的C ++ 11規范,所以我不知道什么是正確的行為。
const
關鍵字出錯。 using
const
。 標准的預期行為是什么?
這已經被C ++ 98所允許 - cv-qualifiers可以通過typedef名稱和模板參數多次引入 - 它們只是簡單地折疊了。 如果不允許這樣做,通用代碼會有很多問題。 引用也是如此。
§7.1.6.1 [dcl.type.cv] p1
:
有兩個cv限定符 ,
const
和volatile
。 [...]
冗余的cv資格被忽略。 [ 注意:例如,這些可以由typedef引入。 - 尾注 ]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.