問題:類在頭文件.h裏定義,那麼類的成員函數如果也在頭文件裏定義,那麼每次#include頭文件都要定義編譯一次,矛盾!
所以,在頭文件裏只需聲明成員函數,在一個.c文件裏定義成員函數,運用::。
例:
/**********************A.h頭文件***********************/
#include<iostream>
using namespace std;
class college
{
public:
int name ;
int age;
int quality;
void display();//聲明
};
/**********************app.c ************************/
#include<stdio.h>
#include<iostream>
#include"ddd.h"
using namespace std;
void college::display() //定義成員函數
{
cout<<name<<endl;
}
int main()
{
college c1;
college *p;
p=&c1;
p->age=100;
cout<<p->age<<endl;
return 0;
}
/**********************another_app.c ************************/
#include<stdio.h>
#include<iostream>
#include"ddd.h"
void test()
{
college c2;
c2.display();
}
這樣編譯器就不會出錯了