速度が非常に重要なコードを書いています。テストケースを書いた後、メインバイナリの作成に移っているところです。私のテスト ランナーでは、ワイルドカードを使用してリンカにすべてを提供するだけです。(以下のように)
私の考えでは、リンクはC++が物事を接着する段階です-関数への参照などを埋め、バイナリのためにすべてをまとめます。
# Do the linking for the test binary
$(BIN)test_cases: $(TEST)TestRunner.o
$(CC) $(TEST)*.o $(SRC)*.o $(CPPUNITLINKS) $(MAINLINKS) -o $(BIN)test_cases
私の質問は、可能な限りプログラムを高速化することを検討している場合、「メイン」バイナリに必要な最小限のファイルをリンクする方がよいでしょうか? これにより、より無駄のない実行可能ファイルまたはより高速なプログラムが実現しますか? それとも、コンパイラーは必要のないものを効果的に破棄しますか?