簡體   English   中英

這個程序正確嗎->使用C ++ 0x N3242

[英]Is this program is correct -->using C++0x N3242

類是一種類型。 它的名稱在其范圍內成為類名(9.1)。

  class-name: identifier simple-template-id 

類名和詳細類型名(7.1.6.3)用於創建類名。 類的對象由成員和基類對象的序列(可能為空)組成。

  class-specifier: class-head { member-specificationopt } class-head: class-key attribute-specifier-seqopt class-head-name class-virt-specifier-seqopt base-clauseopt class-key attribute-specifier-seqopt base-clauseopt class-head-name: nested-name-specifieropt class-name class-virt-specifier-seq: class-virt-specifier class-virt-specifier-seq class-virt-specifier class-virt-specifier: final explicit class-key: class struct union 

一個class-virt-specifiner-seq最多應包含每個class-virt-specifiner中的一個。

一個類說明者,其類頭省略了類頭名,它定義了一個未命名的類。 [注意:因此,未命名的類不能是最終的或顯式的。 —尾注]

在這里:他們使用->最終的,顯式的作為class-virt-specer:

為此,我應該這樣使用:

 1) struct A{ void f();};
    struct B final : A{void f();};
    int main() {   return 0; }
 2) struct A{ void f();};
    struct B explicit : A{void f();};
   int main() {   return 0; }
   etc...

誰能告訴我正確的用法...如果錯了

AND:請告訴我哪個編譯器將支持此功能。(我知道VC ++,GCC 4.6.0支持許多功能),但是GCC不支持上述功能。請建議我該怎么做?

看起來還可以,但是我不認為任何編譯器都可以實現。

它也可能會更改,因為有一個刪除要求:

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3234.pdf

暫無
暫無

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

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