テンプレートを使用して C コードを開発する場合、リンク中に「未解決の外部シンボル」エラーが発生することがよくあります。この問題は、テンプレート化されたクラスと関数が、通常は別のソース ファイル (.cpp) で使用されるまでインスタンス化されないために発生します。
テンプレートを使用すると、コンパイラはその関数を構築するための完全なコードを要求します。適切なタイプの正しい関数。ただし、関数のコードはテンプレートのソース ファイルに含まれているため、使用できません。
そのため、コンパイラは関数が別の場所で指定されていると想定し、その呼び出しのみを含めます。テンプレートのソース ファイルをコンパイルすると、プログラム ソースの特定のテンプレート タイプが利用されないため、重要な関数コードの生成に失敗します。これにより、未解決の外部シンボル エラーが発生します。
問題の解決方法:
以上がC テンプレートによって「未解決の外部シンボル」リンカ エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。