36

Google の C++ テスト フレームワークには 2 つの出力ライブラリがあります。1 つは gtest.lib で、もう 1 つは gtest_main.lib です。Visual Studio で gtest をセットアップする方法に関するNik Reiman の回答によると、gtest_main.lib にリンクする必要がありますが、私は gtest.lib にリンクしており、私が持っているサンプル テスト ケースは正常に動作しています。

2 つのライブラリの違いは何ですか?どちらにリンクしても問題はありませんか?

4

3 に答える 3

33

唯一の合理的な違いは、gtest_main.libがテスト アプリケーションのエントリ ポイント (つまりmain関数)のデフォルトの実装を提供することです。

Getting started with Google C++ Testing Frameworkからの引用:

「[...] main() 関数をすべて書くのは大変だと思うかもしれません。私たちはあなたの意見に完全に同意します。それが、Google Test が main() の基本的な実装を提供する理由です。ニーズに合っている場合は、リンクしてください。 gtest_main ライブラリを使用したテストで、準備完了です。」

メイン関数を自分で書きたい場合は、gtest.libにリンクする必要があります。

于 2011-06-23T18:05:07.227 に答える