私のゲームには、次のコードを含む更新関数があります。
void DrawMiniFPSCounter();
DrawMiniFPSCounter();
このDrawMiniFPSCounter()
関数は、ビルドターゲットの一部であるminiFPSCounter.cppというファイルで宣言されています(私はXcodeを使用しています)。ビルド中に、DrawMiniFPSCounter
シンボルが見つからないというリンカーエラーが発生します。上記の宣言を削除して呼び出しDrawMiniFPSCounter()
てみましたが、コンパイル中に「シンボルが見つかりません」というエラーが発生します。リンカがこのシンボルを見つけるのに問題があるのはなぜですか?プロジェクトでシンボルが解決される順序と関係がありますか?
nm hrMiniFPSCounter.o | grep Draw
編集:ビルドディレクトリでコマンドを実行すると、次の出力が得られました:
00000000 T __Z15DrawMiniCounteriiiii
0002d040 S __Z15DrawMiniCounteriiiii.eh
00000a00 T __Z18DrawMiniFPSCounterv
0002d148 S __Z18DrawMiniFPSCounterv.eh
00000560 t __ZL9DrawDigitiiib
0002d128 s __ZL9DrawDigitiiib.eh
これは正常ですか?関数名の最後に余分な文字があるのはなぜですか?