問題タブ [local-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.
c++ - 関数内で宣言された相互 C++ クラス
関数内でクラスを定義して、お互いを「認識」するにはどうすればよいですか? これは、私が理解しようとしているものの大幅に縮小されたバージョンです。私は次のようなことをしたいと思います:
A::bar() はまだ B について何も知らないため、これは機能しません。関数の外では、B が宣言されるまで A::bar() の定義を延期できます。何かのようなもの:
しかし、それは関数内では機能しないようです。
これをすべて機能させる巧妙なスコープ宣言の代わりに、これは C++ では不可能であるという明確な回答も歓迎します (参照してください)。
これを回避する他の方法があることは知っています (たとえば、foo の外でクラスを宣言する) ので、同様のことを行う方法についての回答は探していません...
c++ - 関数内で定義された構造体を std::for_each のファンクターとして使用できないのはなぜですか?
次のコードはコンパイルされません。コンパイラは、*for_each* の呼び出しに一致する関数がないと文句を言います。これはなぜですか?
struct FlipFunctor
function の前に移動するflip_all
と、コードがコンパイルされます。
完全なエラー メッセージ:
for_each(std::_Rb_tree_iterator<std::pair<Element* const, Element*> >, std::_Rb_tree_iterator<std::pair<Element* const, Element*> >, flip_all(std ::map<Element*, Element*, std::less<Element*>, std::allocator<std::pair<Element* const, Element*> > >)::FlipFunctor)'</p>
java - Java ローカル クラスとインターフェイス
実装のために次のことが可能かどうか疑問に思っていました:
2 つのインターフェイスがあり、それぞれに 1 つの関数ヘッダーがあるとします。 たとえば、iterface1 には関数 g(...) があり、interface2 には関数 f(...) があります。
ここで、クラスを作成し、このクラスがこれら 2 つのインターフェイスを実装していることを宣言します。クラスでは、次のことを試みます。
関数 g(...) の実装を開始し、その実装で、interface2 を実装するローカル クラスを作成し、このクラスに f(...) の実装を追加します。
c++ - Localクラス、Innerクラス、NestedクラスはC ++では同じものですか?
Localクラス、Innerクラス、Nestedクラスは、C ++では同じ意味ですか?
java - Java。ローカルクラスはそれを最終的にしない理由はありますか?
Javaのローカルクラス(メソッドまたは{}で囲まれたブロックで宣言するクラス)について質問があります。
ローカルクラスをfinalとして宣言しない理由はありますか?ローカルクラスから他のクラスを継承することはできませんが(同じスコープで定義されていない場合)、finalとして宣言すると、コンパイラーによってコードがはるかに単純になる可能性がありますか?
ありがとうございました!
c++ - ローカル クラスで静的データ メンバーが許可されないのはなぜですか?
static const
メンバーがローカル クラスに存在できない理由は何ですか? かなりばかげた制限のようです。
例:
標準 (9.8.4) からの引用:
ローカル クラスには、静的データ メンバーがあってはなりません。
c++ - ローカルクラス:C++03とC++11
C ++ 11のローカルクラスの使用法に変更はありますか?
C ++ 03では、ローカルクラスをテンプレート引数として使用できないようです(覚えています)。
このコードを考えてみましょう。
ただし、コンパイルエラー(C ++ 03モード)が発生し、(ideone)と表示されます。
prog.cpp:4:エラー:「f(main():: S)」の呼び出しに一致する関数がありません</ p>
ただし、C ++ 11モード( ideone )でコンパイルすると正常にコンパイルされます。これは私には理にかなっています。そうしないと、ラムダが機能しません。したがって、ローカルクラスの使用法には少なくともこの変更があると思います。私は正しいですか?ローカルクラスに関するその他の変更点は何ですか?
読者が自分自身を比較できるように、また将来の参考のために、標準(C++03とC++11の両方)から関連するテキストを引用してください。
java - Java がローカル クラスを見つけられないと文句を言うのはなぜですか?
2 つのエンティティ間で複雑なマッピングを実行するように Dozer をセットアップしようとしています。percentCompleted
基本的に、値が 1 (100%) であるかどうかに基づいて 、double をブール値に変換する必要があります。
これを行うために、次のメソッドを作成しました。
問題は.fields()
、 のシンボルが見つからないと言って呼び出しが不平を言うことですisCompletedConverter
。ローカルクラスを行うのはこれが初めてなので、何か間違ったことをしていると確信していますが、正確にはわかりません。
c++ - ローカルクラスのフレンド機能の使い方は?
次の例に示すように、フレンド関数はローカル クラスで宣言できるためです。外部からアクセスできない関数定義で定義されている場合、ローカルクラスのメンバーにアクセスするためにどのように使用できますか?