2016-06-14 2 views
15

今日、私はこのコード部分(boost/type_index/type_index_facade.hppの252-259行目)に出くわしました。C++の演算子間のコンマ

/// noexcept comparison operators for type_index_facade classes. 
bool operator ==, !=, <, ... (const type_index_facade& lhs, const type_index_facade& rhs) noexcept; 

/// noexcept comparison operators for type_index_facade and it's TypeInfo classes. 
bool operator ==, !=, <, ... (const type_index_facade& lhs, const TypeInfo& rhs) noexcept; 

/// noexcept comparison operators for type_index_facade's TypeInfo and type_index_facade classes. 
bool operator ==, !=, <, ... (const TypeInfo& lhs, const type_index_facade& rhs) noexcept; 

誰かが私に説明することができますか?私は「!、<、==、= ...」のようなものの前に見たことがない

+5

私はそれが何であるか分かりませんが、C++ではありません。 – 101010

+0

@ 101010それはC++です11 –

+1

@FirstStepこれは有効ではありませんC++ 11、上の答えで説明されているように –

答えて

32

をあなたはこれらが書かれていることがわかります内:

#if defined(BOOST_TYPE_INDEX_DOXYGEN_INVOKED) 
    ... 
#endif 

これは、doxygenの利用をするだけハックですこれらの「簡略化された」宣言はドキュメントに含まれています。このコードはコンパイルされません。