了解靜態聯編的動態聯編的概念。掌握動態聯編的條件。
//sy6_1.cpp
#include
using
namespace
std;
class
base
voidg(
float
x)
voidh(
float
x)
};class
derived:
public base
"voidg(
intx)
voidh(
float
x)
};int
main
()
. 分析並除錯下列程式
//sy6_3.cpp
#include
using
namespace
std;
class
base
voidf(
float
x)
virtual
voidg(
void)
};class
derived:
public base
"<};
intmain
()
//sy6_3.cpp
#include
using
namespace
std;
class
point
double
area
()
private:
double x,y;
};class
rectangle:
public point
double
area
()
private:
double w,h;
};int
main
()
//sy6_4.cpp
#include
using
namespace
std;
const
double pi=3.1415;
class
shap
;class
********:
public shap
double
area
()
private:
double h,w;
};class
rectangle:
public shap
double
area
()
private:
double h,w;
};class
circle:
public shap
double
area
()
private:
double r;
};class
square:
public shap
double
area
()
private:
double s;
};double
total
(shap *s,
intn)
intmain
()
//sy6_5.cpp
#include
using
namespace
std;
class
teacher
;class
professor:
public teacher
;int
salary
()
;
void
(int
money);};
class
associateprofessor:
public teacher
;int
salary
()
;
void
(int
money);};
class
lecturer:
public teacher
;int
salary
()
;
void
(int
money);};
intmain
()
第4題的shape類定義為抽象類,提供共同操作介面的純虛函式。twodimshape類和threedimshape類仍然抽象類,第3層具體類才能提供全部函式的實現。在測試函式中,使用基類指標實現不同派生類物件的操作。、
//sy6_6.cpp
#include
using
namespace
std;
class
shape
;class
twodimshape:
public shape{};
class
circle:
public twodimshape
double
area
()
double
bulk
(){}
private:
double r;
};class
threedimshape:
public shape{};
class
sphere:
public threedimshape
double
area
(){}
double
bulk
()
private:
double r;
};int
main
()
程式輸出結果如下:
通過本次實驗讓自己了解靜態聯編的動態聯編的概念以及靜態聯編和動態聯編的區別,了解了什麼是過載和覆蓋函式掌握動態聯編的條件。在同乙個作用域內,函式名相同,引數列表不同(引數個數不同,或者引數型別不同,或者引數個數和引數型別都不同),返回值型別可相同也可不同,這種情況叫做c++的過載。
實驗6,多型性與虛函式
一 實驗目的和要求 了解靜態聯編和動態聯編的概念。掌握動態聯編的條件。二 實驗內容 1 分析並除錯下列程式。sy6 1.cpp includeusing namespace std class base 1 找出以上程式中使用了過載和覆蓋的函式。答 base類中函式void g 和void h 與d...
實驗6,多型性與虛函式
一 實驗目的和要求 了解靜態聯編和動態聯編的概念。掌握動態聯編的條件。二 實驗內容 1 分析並除錯下列程式。cpp view plain copy sy6 1.cpp include using namespace std class base class derived public base i...
實驗六 多型性與虛函式
了解靜態聯編的動態聯編的概念。1.分析並除錯下列程式。include using namespace std class base 1 找出以上程式中使用了過載和覆蓋函式。答 base類中函式void g 和void h 與derived類中的函式void g 和void h 函式名相同,引數型別不...