[問題] 同一個function在不同cpp檔使用
我在main.cpp寫了一個function void A(void)
main.cpp
-----------------------------
#include "x1.h"
#include "x2.h"
int main(void)
{
.....
return 0;
}
void A(void)
{...}
然後在x1.h與x2.h裡面有寫到
extern void A(void);
因為想在x1.cpp與x2.cpp裡面使用A這個function
但是compile以後有出現下面的warning
x2.h [Warning] redundant redeclaration of `void A(void)' in same scope
x1.h [Warning] previous declaration of `void A(void)'
請問該怎麼改寫才不會有這個warning呢?
另外有砍掉compile後產生的*.o檔 再執行compile的話
會與沒有砍掉*.o檔直接compile的結果不同
這是怎麼回事呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.187.104
推
03/25 23:03, , 1F
03/25 23:03, 1F
推
03/25 23:05, , 2F
03/25 23:05, 2F
→
03/25 23:42, , 3F
03/25 23:42, 3F
→
03/25 23:43, , 4F
03/25 23:43, 4F
推
03/25 23:48, , 5F
03/25 23:48, 5F
推
03/26 00:20, , 6F
03/26 00:20, 6F
→
03/26 00:21, , 7F
03/26 00:21, 7F
→
03/26 13:32, , 8F
03/26 13:32, 8F
討論串 (同標題文章)
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 1 之 3 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章