多檔案程式包含:
標頭檔案.h
原始檔.cpp
主函式.cpp
//宣告抽象基類shape
class shape
//虛函式
virtual float volume() const //虛函式
virtual void shapename() const=0; //純虛函式
};
//宣告類point
class point:public shape //point是shape的公用派生類
//讀x的座標
float gety() const //讀y的座標
virtual void shapename() const //對虛函式進行在定義
friend ostream &operator <<(ostream&,const point&);
protected:
float x,y; //受保護成員
};
//宣告派生類circle
class circle:public point //circle是point類的公用派生類
friend ostream &operator <<(ostream &,const circle &);//過載運算子「<<」
protected:
float radius;
};
//宣告circle的派生類cylinder
class cylinder:public circle
friend ostream& operator <<(ostream&,const cylinder &);
protected:
float height; //圓柱高
};
檔案
#includeusing namespace std;
#include"shape.h" //需要包含的標頭檔案
#include"point.h"
//下面定義point類的成員函式
point::point(float a,float b) //對x,y初始化
void point::setpoint(float a,float b) //為x,y賦新值
//過載運算子「<<」,使之能輸出點的座標
ostream & operator <<(ostream &output,const point &p)
//設定半徑值
void circle::setradius(float r)
//讀取半徑值
float circle::getradius() const
//計算圓面積
float circle::area() const
//過載運算子「<<」,使之按規定的形式輸出圓的資訊
ostream &operator <<( ostream &output,const circle &c)
//設定圓柱高
void cylinder::setheight(float h)
//讀取圓柱高
float cylinder::getheight() const
//計算圓柱表面積
float cylinder::area() const
//計算圓柱體積
float cylinder::volume() const
//過載運算子「<<」,使之能按規定形式輸出圓柱的資訊
ostream &operator <<( ostream &output,const cylinder& cy)
{ output<<"center=["#include"shape.h"
#include"point.h"
#include"circle.h"
#include"cylinder.h"
int main()
{ point point(3.2,4.5); //建立point類物件point
circle circle(2.4,1.2,5.6); //建立circle類物件circle
cylinder cylinder(3.5,6.4,5.2,10.5);//建立cylinder類物件cylinder
point.shapename(); //靜態關聯
coutcout<<"x="cout<<"x="cout<<"x="area(),pt->volume().
這時通過動態關聯分別確定呼叫哪個函式。分別輸出不同物件資訊。*/
多目錄下多檔案 makefile編寫
前面已經分享了單目錄項下多檔案的makefile的編寫,現在來看看多目錄下多檔案makefile的編寫 在做專案時,一般檔案都會分幾個目錄來存放 基本的是 include bin src obj lib tools 這幾個檔案 我先說下我的檔案存放目錄,用ls r可以檢視到所有檔案 include ...
C語言多檔案編寫詳解
目錄 只能有乙個 main.c 檔案 其餘函式分別在 func1.c func2.c func3.c 中實現 在對應的 c 檔案中呼叫 h 標頭檔案庫 include operation.h 在 operation.h 檔案中程式設計客棧宣告函式,可以當glqrfgg作乙個標頭檔案函式庫直接呼叫 記...
單目錄下多檔案 makefile編寫
makefile很久就接觸過了,但是一直沒怎麼深入的去學習和總結 在專案中我也只是看看makefile或者修改部分語句,全部自己動手寫的話還真沒有 知識在於沉澱,這句說的非常好,所以現在把自己理解的東西,記錄下來,以便後面查閱 這篇blog要分享的是在單目錄下多檔案的makefile編寫,首先說明當...