問題タブ [class-template]

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

c++ - CMake リンカ: ライブラリがリンクされていても未定義の参照

クラスプロジェクトに CMake (CLion) を使用しています。次の解決策を試しましたが、うまくいきませんでした: 123

クラス プロジェクト用に HeapSort クラスを作成しましたが、それを使用して文字列のベクトル (辞書) を並べ替える必要があります。このディクショナリに HeapSort クラスのインスタンスを次のように作成します。

heapSort()クラスが次のように定義されているコンストラクターと関数への未定義の参照を取得し続けます(heapSort()同様です):

ヒープ.cpp

Heap.h

CMakeLists.txt

現在、すべてのファイルを 1 つのフォルダーにまとめています。CMakeLists.txtこの時点で何を追加する必要がありますか? 私はadd_library/target_link_library(異なる順序で)試してinclude_directoriesみました. ディレクトリも再編成する必要がありますか?

編集: Heap.cpp と Heap.h を追加

0 投票する
4 に答える
3343 参照

c++ - 派生クラスでテンプレートの基本メソッドをオーバーライドしますか?

以下のような基本クラスがあるとします。

次に、Derived以下のようにクラスを作成し、do_something()メソッドをオーバーライドします。

クラス テンプレートでは仮想化が機能しないことはわかっており、メソッドの実装を隠しているだけです。しかし、一連の派生クラスと基本クラスをベクトルに格納したい (型消去やポリモーフィズムを使用したくない)、

私の質問は、クラスからベースクラスへのクラスがベースクラスを与えることstatic_castDerived考えるとdo_something、それぞれがクラスの実装を持っている間にそれらをベースクラスとして保存できる方法はありますdo_something()か?

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

c++ - C++17 クラス テンプレート推論 const-ness

新しい c++17 クラス テンプレート推定を使用しようとしていますが、const を適用するまではすべて正常に動作しているようです。これは私が直面している問題の小さな例です:

const X がその型を推測しているとき、const-ness は実行されないようです。私はこれが可能であることを知っています:

ただし、これにより、すべての推定型が const X になります。

誰かが情報や助けを持っているなら、それは大歓迎です!

編集 私はGCC-7.1.0を使用しています