偶然、私が見ていたソースコードの1つでこれを見つけました。だから、私はここで同様の小さな例を挙げています。
test.hファイル内:
#include<iostream>
class test{
int i;
public:
test(){}
//More functions here
};
test.cppファイル内:
#include "test.h"
int main()
{
test test1;
test::test test2;
test::test::test test3;
return 0;
}
まず第一に、test2
そのように宣言する理由はありますか?次に、このコードはg++バージョン4.4.3以下のバージョンで問題なくコンパイルされます。C ++標準には、スコープを解決する必要がない場合、スコープ解決演算子は無視されるという何かがありますか?