1. 程式人生 > >c++ 中 extern 對struct 結構體的使用

c++ 中 extern 對struct 結構體的使用

型別的定義和型別變數的定義不同,

型別定義只是描述一個型別,

是給編譯器看的,

不會產生可執行程式碼。

變數定義是指在執行檔案中真實得存在這麼一塊內容。

 

 因為每個.c裡都要寫清楚型別定義很麻煩,

所以一般都把型別定義寫在.h裡,

而在.c裡採用簡單的寫法,

如struct A a;這樣定義變數,

不需把整個型別的描述再寫一遍。

 

所以,struct型別定義放到 ser.h裡面,ser.cpp 里加struct str st_r;

CmfcDlg.cpp加上#include "ser.h"然後直接使用extern struct str st_r;

 

例如:

ser.h中

struct str

{

};

ser.cpp中

struct str st_r ;

 

CmfcDlg.cpp中

#include "ser.h"

extern struct str st_r;