問題タブ [enum-class]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
337 参照

c++ - 名前空間内の列挙型クラスでブースト テストが失敗する

operator <<C++11 に対してを定義するenum classと、Boost の単体テスト ライブラリで正常に使用できます。

enum classただし、 を の中に入れるnamespaceと、Boost コードはコンパイルされなくなります。

enum class内部に入れると機能しなくなるのはなぜnamespaceですか?std::coutどちらの方法でも問題なく動作するので、これoperator <<は正しいことを意味しますか?

この問題を示すサンプル コードを次に示します。

0 投票する
2 に答える
665 参照

c++ - C++14 演算子 << ストリーム挿入および列挙型クラス用

「BLACK」と「WHITE」の 2 人のプレイヤーがいるゲームを書いています。

次の列挙型クラスがあります。

このクラスの ostream operator<< を書きたいと思います。これが私の試みです:

ただし、次のコンパイラ エラーが発生します。

問題は、enum クラスと operator<< を別のクラス内にネストしていることだと思います。class Player.

このクラス内から列挙型を削除せずにこれについてできることはありますか?

0 投票する
1 に答える
3133 参照

c++ - enum クラスとブーストのシリアライゼーション

ブースト シリアライゼーションclassを使用するメンバーを持つ a をシリアライズ/デシリアライズするにはどうすればよいですか。enum class例:

またはenum_classを受け入れないため、シリアライズ可能にすることはできません。解決策は何ですか?friendmember functions

0 投票する
1 に答える
1499 参照

c++ - switch() で未処理の enum クラス値 - 例外またはアサート?

lvlですenum class

コンセンサスはdefaultそこにあるべきですが、関連する質問の意見は、それが何をすべきかについて分かれています。全体をクラッシュしますか?現在のスレッドをクラッシュしますか? 例外を適切に処理しますか?

両陣営はコメントでいくつかの議論を提示していますが、議論は完全に決定的なものではありません.

どちらを使用すべきか、またはどの条件で使用すべきか、誰かが包括的な答えを提示できますか?

0 投票する
1 に答える
114 参照

c++11 - :: 演算子を使用していますが、列挙型クラス エラーがクラス、名前空間、またはスコープ付き列挙型ではないというエラーが引き続き表示されます

Car オブジェクトの色とノイズを印刷したいと思います。Car クラス内で c++11 の enum クラスを使用しようとしています。コンパイルすると、Car::Color and Car::Noise is not a class, namespace, or scoped enumeration というエラーが表示されます。:: 演算子を使用して enum クラスにアクセスしています。しかし、エラーは解決しません。問題は Car.cpp ファイルにあるようです。これが私のコードです。どんなアドバイスでも大歓迎です。本当にありがとう。

車.h

車.cpp

main.cpp

0 投票する
0 に答える
62 参照

c++ - 別の場所でクラスの一部である列挙型を宣言することは可能ですか?

typeカスタム列挙型クラスの属性を持つクラスがありますClass::Type。現在、 の宣言はClass次のようになっています。

しかし、クラス宣言のビジュアルを妨げないように、別のClass::Type場所 (できればクラス宣言の直後)の宣言を配置したいと考えています。

それは可能ですか?どのように?

0 投票する
1 に答える
2763 参照

qt - QML コンポーネント列挙型クラス プロパティ

別のqmlファイルにデリゲートコンポーネントがあり、c++ QObject から列挙型クラスタイプであるプロパティが必要です。これは可能ですか?

最小限の(非)作業例を次に示します。

card.h

main.cpp

testcard.qml

私が得るコンパイラエラー:

D:\Programs\Qt\Qt5.7.0\5.7\mingw53_32\include\QtQml\qqml.h:89: エラー: 'staticMetaObject' は 'Card::InGameState' のメンバーではありません const char *className = T::staticMetaObject 。クラス名(); \

enum クラスが QObject ではないため、このエラーが発生します。しかし、Q_ENUM マクロはそれを MetaSystem で使用できるようにすべきではありませんか?

これを手伝ってくれませんか?enum クラスを削除して enum に変更し、qml で int プロパティを使用することもできますが、c++11 の機能を使用したいと考えています。