問題タブ [scope-resolution-operator]

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 投票する
3 に答える
471 参照

c++ - 範囲外のメンバー関数定義に、グローバル スコープまでの完全修飾クラス名が必要になることはありますか?

この質問により、クラス外のメンバー関数定義でクラス名 (グローバル スコープ演算子を含む) を完全に修飾することが有用か必要かどうか疑問に思いました。

一方で、これが行われたことはこれまで見たことがありません (そして、適切に行うための構文はわかりにくいようです)。一方、C++ の名前検索は非常に簡単ではないため、まれなケースが存在する可能性があります。

質問:

クラス外のメンバー関数定義の導入が(グローバル スコーププレフィックスなし)
ReturnType (::Fully::Qualified::Class::Name::MemberFunctionName)(...) { ... }
と異なる場合はありますか?
ReturnType Fully::Qualified::Class::Name::MemberFunctionName(...) { ... }::

メンバー関数の定義は、クラスを囲む名前空間に配置する必要があるため、これは有効な例ではありません。

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

c++ - is_const<> のバージョンを呼び出しますが、型ではなく変数を 1 行で呼び出します

こんにちは、私は C++ を学んでおり、is_const などの型特性について読みました。is_const は、次のように 1 行で呼び出すことができます。

独自のバージョンの is_const を作成しましたが、変数が const であるかどうかをテストするために、次のように使用できます。

check_const も1行で呼び出したいのですが、コンパイラは次のようなエラーを出し続けます

のように呼んでみると

check_const を 1 行で呼び出せるように変更するにはどうすればよいですか?