C コンパイル エラーの解決策: '関数' の再定義、解決方法は?
C は強力なプログラミング言語として、ソフトウェア開発で広く使用されています。ただし、初心者にとってエラーのない C プログラムを作成するのは簡単ではありません。よくあるエラーの 1 つは、関数の再定義エラーである「'関数' の再定義」です。この記事では、このエラーの原因と解決方法について説明します。
エラーの理由:
C プログラムで同じ名前の関数を定義すると、コンパイラは「'関数' の再定義」エラーを報告します。このエラーは通常、次の状況で発生します。
次の例を見てください:
// example.cpp int add(int a, int b) { return a + b; } int add(int a, int b) // 重复定义相同的函数 { return a + b; } int main() { int result = add(3, 4); return 0; }
上の例では、同じソース ファイル内で「add」という名前の関数を 2 回定義しています。このプログラムをコンパイルしようとすると、「'add' の再定義」エラーが発生します。
解決策:
関数の再定義エラーを解決するには、主に 2 つの方法があります: 1 つは、同じソース ファイルで同じ関数を複数回定義しないようにすること、もう 1 つは、異なるソース ファイルで同じ関数を定義することです関数では、競合を避けるために関数宣言とヘッダー ファイルを使用します。
// example.cpp int add(int a, int b) { return a + b; } int main() { int result = add(3, 4); return 0; }
上記のコードにより、関数の再定義エラーが修正されました。関数定義を 1 つだけ保持し、それを main 関数で呼び出します。
まず、example.cpp と add.cpp という 2 つのソース ファイルを作成しましょう。
// add.h #ifndef ADD_H #define ADD_H int add(int a, int b); #endif
// add.cpp #include "add.h" int add(int a, int b) { return a + b; }
// example.cpp #include "add.h" int main() { int result = add(3, 4); return 0; }
上の例では、ヘッダー ファイルと関数宣言を使用して関数の再定義エラーを解決しました。 add.h ヘッダー ファイルでは、add 関数の宣言を定義し、条件付きプリプロセッサを使用して繰り返しの組み込みを回避します。
add.cpp ソース ファイルでは、add 関数の特定の定義を実装します。
最後に、example.cpp ソース ファイルに add.h ヘッダー ファイルをインクルードし、関数の再定義エラーなしで add 関数を使用できるようにします。
概要:
関数の再定義エラーは、C 開発でよくあるエラーの 1 つです。このエラーを回避するには、同じソース ファイルで同じ関数を複数回定義することを避け、関数宣言とヘッダー ファイルを使用して、異なるソース ファイルで同じ関数を定義することによって生じる競合を解決する必要があります。このようにして、高品質でエラーのない C プログラムを作成できます。
以上がC++ コンパイル エラーを解決する方法: '関数' の再定義?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。