[問題] 關於昨天上課的一問題
教授昨天舉了以下的例子
"a.h"
class A { };
"a.cpp"
void f(A* ){ }
此時我若想在"c.cpp"中的函式用a (a是指向A的pointer)
原本是這樣:
void g(){
f(a)
}
在不include a.h的狀況之下
需變成這樣:
class A;
void f(A*);
extern A* a;
void g(){
f(a)
}
希望我上課的筆記沒寫錯 有錯請幫忙更正一下 謝謝
覺得吊詭的是 如果這是在c和cpp互call的話
c中又看不懂class
所以教授的意思是說要.cpp中
struct A ;
void f(A*);
extern A*a;
這樣的意思嗎?
--
感覺應該是這樣 但不敢確定所以po上來問一下orz
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.4.235
推
05/29 21:35, , 1F
05/29 21:35, 1F
→
05/29 21:36, , 2F
05/29 21:36, 2F
→
05/29 22:14, , 3F
05/29 22:14, 3F
推
05/29 23:02, , 4F
05/29 23:02, 4F