私は単に C で独自のヘッダー ファイルを実装しようとしています。最初に、ファイル INC2.h があります。
void diffadd(int b[], int n);
int diffcheck(int m);
次に、ファイル INC2.cpp を作成します。
void diffadd(int b[], int n)
{
int i=0;
for (i=0; i < n; i++)
{
b[i]=b[i]+1;
printf("\n%d",b[i])
}
}
int diffcheck(int m)
{
return (m*5);
}
次に、メインファイル LETS.cpp で
#include"inc2.h"
void main()
{
clrscr();
int a[5]={1,2,3,4,5};
diffadd(a,5);
int t=diffcheck(5);
printf("t=%d",t);
getch();
}
次に、inc2.cpp をコンパイルします。大丈夫!
次に、lets.cpp をコンパイルします。
次のエラーが表示されます。
モジュール LETS.cpp 内の未定義のシンボル diffcheck(int)
モジュール LETS.cpp 内の未定義のシンボル diffadd(int near*, int)
興味深いことに、INC2.cpp を LETS.cpp に含めると、IT は機能します。
別のヘッダー ファイル HEAD.h を作成し、ここですべての関数を定義すると、うまくいきます。
ここで何が起こっているのか説明してください!