問題タブ [header-only]

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

c++ - CLion では、ヘッダーのみのライブラリ: ファイルは「どのプロジェクト ターゲットにも属していないため、コード インサイト機能が正しく動作しない可能性があります」

cmake コマンドでセットアップされたヘッダーのみのライブラリ プロジェクトがあります。

そして私も追加しました

しかし、ソース ファイルを開くと、次の警告が表示されます。

このファイルはどのプロジェクト ターゲットにも属していません。コード インサイト機能が正しく動作しない可能性があります

コード補完などの多くの機能を失います。

CLion がヘッダーのみのライブラリで通常の機能を提供するように、これを設定する適切な方法は何ですか?

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

c++ - QObject を継承するヘッダーのみのオブジェクトを自動モックできますか?

私は Qt に比較的慣れていませんが、Qt をプロジェクトに組み込んでいます。タイマーで使用する QObject を継承する非常に小さなオブジェクトを作成しました。そのためのヘッダーのみのファイルを作成しましたが、コンパイラーがすぐに気に入らないことに気付きました。そこで、エラーを取り除くために無料の .cpp ファイルを作成しましたが、うまくいくようでした。

私の質問は本当に、QObject を継承するヘッダーのみのオブジェクトを作成し、自動モック化できるようにすることはできますか? または、無料の cpp ファイルを毎回作成する必要がありますか?

複製するコードを少量生成しましたが、これは私の言いたいことを示しています。

CMakeLists.txt

メイン.cpp

Header.h

出力

もちろん、このHeader.cppをソースに追加すると、エラーが解消されます。

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

c++ - ヘッダーのみのライブラリを使用した Cpp コンパイル手法

ヘッダーのみのライブラリ (tiny-dnn) を含むプロジェクトをコンパイルすると、使用可能なメモリが (12GB から) ゼロになることに気付きました。これに続いて、システムがフリーズします。これは主に、コンパイル エラーまたはリンカー エラー (特にリンカー エラー) が発生した場合に発生するようです。これは、スワップのオンまたはオフで発生します。

メモリをより効率的に使用する方法や、再帰を少なくする方法などはありますか?

ubuntu14.04のgcc7 +デフォルトリンカー(チェックしていませんが、明日)とCMake + Ninjaビルドツールを使用しています。使用する便利なコンパイルまたはリンク フラグがいくつかあるのではないでしょうか。この時点で最低限のものを使用していると仮定します。おそらく、clang コンパイラまたはゴールド リンカーに切り替えると役立つでしょうか?

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

cmake - CMake:同じライブラリの複数のバージョンを処理するには?

私のプロジェクトでは、ヘッダーのみのライブラリrapidjson v1.1.0を使用しています。

問題は、tiny-dnnにも rapidjson (ただし古いバージョン) が含まれているため、メインの CMakeLists.txt に tiny_dnn を含めようとしているときに、include_directories(${PROJECT_SOURCE_DIR}/3rdParty/tiny_dnn)tiny-dnn での検索、rapidjson での検索、またはプロジェクトでの tiny での検索のいずれかから競合が発生することです。 -dnnのrapidjson。

my_project CMakeLists.txt

my_project.cpp