我已經在頭文件中聲明瞭一個函數,並在C++/C文件中定義函數。頭文件,其中聲明函數的地方包含在定義了函數的C++文件中。在C/C++文件中定義函數並在頭文件中包含相應文件
現在包含那個C++文件,只要在任何其他C++中需要該函數調用。 這是不好的做法嗎? 或者我應該只在.h
文件中定義函數?
function.h
char *BoyerMoore_skip(char *string, int strLength);
BM.cpp:
#include "function.h"
char *BoyerMoore_skip(char *string, int strLength);
{
...
}
main.cpp中:
include "BM.cpp"
int main()
{
---
BoyesMoore_skip()
}
這不是「_bad practice_」 – 2013-08-17 04:38:56
您應該嘗試*不*在頭文件中定義函數。你必須處理ODR問題。 – chris
看看這個: - http://stackoverflow.com/questions/453372/writing-function-definition-in-header-files-in-c –