C++_Lecture

Size: px
Start display at page:

Download "C++_Lecture"

Transcription

1 C++ 程序设计 张岳新编著 苏州大学出版社 1

2 第十一章 继承和派生类 2

3 继承性是面向对象程序设计中最重要的机制 这种机制提供了无限重复利用程序资源的一种途径 通过 C++ 语言中的继承机制, 可以扩充和完善旧的程序设计以适应新的需求 这样不仅可以节省程序开发的时间和资源, 并且为未来程序增添了新的资源 3

4 class Student { int num; char name[30]; char se; public: void display( ) // 对成员函数 display 的定义 {cout<<"num: "<<num<<endl; cout<<"name: "<<name<<endl; cout<<"se: "<<se<<endl; } 4

5 class Studend1 { int num; // 此行原来己有 char name[20]; // 此行原来己有 char se; // 此行原来己有 int age; char addr[20]; public: void display( ) ; // 此行原来己有 {cout<<"num: "<<num<<endl; // 此行原来己有 cout<<"name: "<<name<<endl;// 此行原来己有 cout<<"se: "<<se<<endl; // 此行原来己有 cout<<"age: "<<age<<endl; cout<<"address: "<<addr<<endl;} 5

6 利用原来定义的类 Student 作为基础, 再加上新的 内容即可, 以减少重复的工作量 C++ 提供的继 承机制就是为了解决这个问题 在 C++ 中所谓 继承 就是在一个已存在的类的基础上建立一个新的类 已存在的类称为 基类 (base class) 或 父类 (father class) 新建立的类称为 派生类 (derived class) 或 子类 (son class) 6

7 class Student1: public Student// 声明基类是 Student {private: int age; // 新增加的数据成员 string addr; // 新增加的数据成员 public: void display_1( ) // 新增加的成员函数 { cout<<"age: "<<age<<endl; cout<<"address: "<<addr<<endl; } 7

8 类 A 派生类 B: 类 A 为基类, 类 B 为派生类 A B 新增加的成员数 据和成员函数 8

9 在 C++ 语言中, 一个派生类可以从一个基类派生, 也可以从多个基类派生 从一个基类派生的继承称为单继承 ; 从多个基类派生的继承称为多继承 9

10 通过继承机制, 可以利用已有的数据类型来定义新的数据类型 所定义的新的数据类型不仅拥有新定义的成员, 而且还同时拥有旧的成员 我们称已存在的用来派生新类的类为基类, 又称为父类 由已存在的类派生出的新类称为派生类, 又称为子类 10

11 在建立派生类的过程中, 基类不会做任何改变, 派生类则除了继承基类的所有可引用的成员变量和成员函数外, 还可另外定义本身的成员变量和处理这些变量的函数, 由于派生类可继承基类的成员变量和成员函数, 因此在基类中定义好的数据和函数等的程序代码可重复使用, 这样可以提高程序的可靠性 11

12 当从已有的类中派生出新的类时, 可以对派生类做以下几种变化 : 1 可以继承基类的成员数据或成员函数 2 可以增加新的成员变量 3 可以增加新的成员函数 4 可以重新定义已有的成员函数 5 可以改变现有的成员属性 在 C++ 中有二种继承 : 单一继承和多重继承 当一个派生类仅由一个基类派生时, 称为单一继承 ; 而当一个派生类 由二个或更多个基类所派生时, 称为多重继承 12

13 类 A 派生类 B: 类 A 为基类, 类 B 为派生类 A B class B:public A{... class B:protected A{... class B:private A{... class B: A {... A 为私有派生 但派生并不是简单的扩充, 有可能改变基类的性质 有三种派生方式 : 公有派生 保护派生 私有派生 默认的是私有派生 13

14 从一个基类派生一个类的一般格式为 : class ClassName:<Access>BaseClassName { 派生类名 继承方式 private:...; // 私有成员说明 public:...; // 公有成员说明 protected:...; // 保护成员说明 } public: 表示公有基类 private: 表示私有基类 ( 默认 ) protected: 表示保护基类 基类名 派生类中新增加的成员 14

15 公有派生 公有派生, 派生类中保持基类的成员特性 class ClassName: public BaseClassName 公有派生时, 基类中所有成员在派生类中保持各个成员的访问权限 基类成员属性 派生类中 派生类外 公有 可以引用 可以引用 保护 可以引用 不可引用 私有 不可引用 不可引用 基类 :public: 在派生类和类外可以使用 protected: 在派生类中使用 private: 不能在派生类中使用 15

16 A ( 私有 ) y( 保护 ) z( 公有 ) A( ) Get() Gety() ShowA() public 在类 B 新增加的成员中不能直接调用 y 在类 B 中可以调用 z 在整个文件中可以调用 B ( 私私有 ) y( 保护 ) z( 公有 ) A( ) Get() Gety() ShowA() m( 私有 ) n( 私有 ) B() Show() Sum() 对类 B 的对象初始化即是对,y,z,m,n 等全部成员的初始化 16

17 class A { int ; protected: int y; public: int z; A(int a,int b,int c){=a;y=b;z=c;}// 基类初始化 int Get(){return ;} // 返回 int Gety(){return y;} // 返回 y void ShowA(){cout<< "="<<<<'\t'<<"y="<<y<<'\t'<<"z="<<z<<'\n';} 公有派生 class B:public A{ int m,n; 对基类初始化 public: B(int a,int b,int c,int d,int e):a(a,b,c){m=d;n=e;} void Show(){cout<< m="<<m<<'\t'<< n="<<n<<'\n'; cout<<"="<<get()<<'\t'<<"y="<<y<<'\t'<<"z="<<z<<'\n'; } int Sum(){return ( Get()+y+z+m+n);} void main(void) { B b1(1,2,3,4,5); b1.showa(); 因为 y 是基类保护, 所以在派生类中可以直接引用 而在类外不可直接引用 因为 是基类私有, 所以在派生类和类外中不能直接引用 b1.show(); cout<< "Sum="<<b1.Sum()<<'\n';cout<<"="<<b1.Get()<<'\t'; cout << "y=" <<b1.gety()<<'\t'; cout << "z="<<b1.z<<'\n';} 因为 z 是基类公有, 所以在派生类中和类外均可直接引用 17

18 私有派生 私有派生, 派生类中基类公有和保护成员成为私有 私有派生时, 基类中公有成员和保护成员在派生类中均变为私有的, class ClassName: private BaseClassName 在派生类中仍可直接使用这些成员, 基类中的私有成员, 在派生类 中不可直接使用 基类成员属性 派生类 派生类外 公有 可以引用 不可引用 保护 可以引用 不可引用 私有 不可引用 不可引用 基类 :public: ( 变为私有 ) 在派生类中使用, 类外不可使用 protected: ( 变为私有 ) 在派生类中使用, 类外不可使用 private: 不能在派生类中和类外使用 18

19 A ( 私有 ) y( 保护 ) z( 公有 ) A( ) Get() Gety() ShowA() 在类 B 新增加的成员中不能直接调用 y 在类 B 中可以调用 z 在类 B 中可以调用 B private ( 私有 ) y( 私有 ) z( 私有 ) A( ) Get() Gety() ShowA() m( 私有 ) n( 私有 ) B() Show() Sum() 均为私有类 B 外不能引用 对类 B 的对象初始化即是对,y,z,m,n 等全部成员的初始化 19

20 class A { int ; protected: int y; public: int z; A(int a,int b,int c){=a;y=b;z=c;}// 基类初始化 int Get(){return ;} // 返回 int Gety(){return y;} // 返回 y void ShowA(){cout<< "="<<<<'\t'<<"y="<<y<<'\t'<<"z="<<z<<'\n';} 私有派生 class B:private A{ int m,n; 对基类初始化 public: B(int a,int b,int c,int d,int e):a(a,b,c){m=d;n=e;} void Show(){cout<< m="<<m<<'\t'<< n="<<n<<'\n'; cout<<"="<<get()<<'\t'<<"y="<<y<<'\t'<<"z="<<z<<'\n'; } int Sum(){return ( Get()+y+z+m+n);} void main(void) { B b1(1,2,3,4,5); b1.showa(); 因为 是基类私有, 所以在派生类和类外中不能直接引用 A a1(1,2,3); a1.showa(); y 是基类保护, 所以在派生类中可以直接引用 而在类外不可直接引用 z 是基类公有, 私有派生变为私有, 所以在派生类中可直接引用, 而在类外不可 这些函数都是基类公有, 在类外不可使用 b1.show(); cout<< "Sum="<<b1.Sum()<<'\n';cout<<"="<<b1.Get()<<'\t'; cout << "y=" <<b1.gety()<<'\t'; cout << "z="<<b1.z<<'\n';} 20

21 保护派生 保护派生, 派生类中基类公有和保护成员降级使用 class ClassName: protected BaseClassName 保护派生时, 基类中公有成员和保护成员在派生类中均变为保护的 和私有的 ( 错吧? 应该改为 保护的 ), 在派生类中仍可直接使用这 些成员, 基类中的私有成员, 在派生类中不可直接使用 基类成员属性 派生类 派生类外 公有 可以引用 不可引用 保护 可以引用 不可引用 私有 不可引用 不可引用 基类 :public: ( 变为保护 ) 在派生类中使用, 类外不可使用 protected: ( 变为私有 ( 应改为 保护 ) ) 在派生类中 使用, 类外不可使用 private: 不能在派生类中和类外使用 21

22 A ( 私有 ) y( 保护 ) z( 公有 ) A( ) Get() Gety() ShowA() 在类 B 新增加的成员中不能直接调用 y 在类 B 中可以调用 z 在类 B 中可以调用 B protected ( 私私有 ) y( 私有 ) z( 保护 ) A( ) Get() Gety() ShowA() m( 私有 ) n( 私有 ) B() Show() Sum() 均为保护类 B 外不能引用 对类 B 的对象初始化即是对,y,z,m,n 等全部成员的初始化 22

23 protected 成员是一种具有血缘关系内外有别的成员 它对派生类的对象而言, 是公开成员, 可以访问, 对血缘外部而言, 与私有成员一样被隐蔽 23

24 抽象类与保护的成员函数当定义了一个类, 这个类只能用作基类来派生出新的类, 而不能用这种类来定义对象时, 称这种类为抽象类 当对某些特殊的对象要进行很好地封装时, 需要定义抽象类 将类的构造函数或析构函数的访问权限定义为保护的时, 这种类为抽象类 24

25 当把类中的构造函数或析构函数说明为私有的时, 所定义的类通常是没有任何实用意义的, 一般情况下, 不能用它来产生对象, 也不能用它来产生派生类 25

26 A ( 私有 ) y( 私有 ) A( )( 保护 ) ShowA()( 公有 ) B public 在类 B 中不能定义 A 的对象 在任何时候都不能定义 A 的对象 ( 私私有 ) y( 私私有 ) A( )( 保护 ) ShowA() m( 私有 ) B() Show() 但可以在初始化类 B 的对象时初始化原类 A 中的成员, 因为 A() 在类 B 中是可以被调用的 26

27 class A { int, y; protected: A(int a,int b){=a;y=b;}// 基类初始化 public: void ShowA(){cout<< "="<<<<'\t'<<"y="<<y<<'\n';} class B: public A{ int m; A a1; // 在派生类中也不可以定义 A 的对象, 实际上还是类外调用 public: a1(4,5) B(int a,int b,int c):a(a,b)// 可以在派生类中调用 A 的构造函数 {m=c;} void Show(){ cout<< m="<<m<<'\n'; ShowA(); } void main(void) { B b1(1,2,3); // 可以定义派生类对象 b1.show(); A aa; // 不可定义 A 的对象 } 27

28 多重继承可以用多个基类来派生一个类 D A B 多重继承是单一继承的扩展 C 派生类中新定义的成员 28

29 格式为 : 继承方式 class 类名 :<Access> 类名 1,..., <Access> 类名 n { private:... ; // 私有成员说明 ; public:... ; // 公有成员说明 ; protected:... ; // 保护的成员说明 ; class D: public A, protected B, private C {...// 派生类中新增加成员 29

30 class A{ int 1,y1; public: A(int a,int b) { 1=a; y1=b; } void ShowA(void){ cout<<"a.="<<1<<'\t'<<"a.y="<<y1<<endl; } class B{int 2,y2; public: B(int a,int b) {2=a; y2=b; } void ShowB(void){ cout<<"b.="<<2<<'\t'<<"b.y="<<y2<<endl; } 公有派生 私有派生 class C:public A,private B{ int,y; public: C(int a,int b,int c,int d,int e,int f):a(a,b),b(c,d) {=e; y=f; } void ShowC(void){cout<<"C.="<<<<'\t'<<"C.y="<<y<<endl; ShowA();ShowB(); } void main(void) { C c(1,2,3,4,5,6); c.showc(); } c.showa (); c.showb (); 仍为公有 成为私有 非法, 私有类外不可调用 B b1(10,20); b1.showb(); 30

31 初始化基类成员构造函数不能被继承, 派生类的构造函数必须调用基类的构造函数来初始化基类成员基类子对象 派生类构造函数的调用顺序如下 : 基类的构造函数子对象类的构造函数 派生类的构造函数 31

32 class B:public A{ int y; A a1; public: 基类的构造函数子对象类的构造函数派生类的构造函数 B(int a, int b):a(a),a1(3){y=b;}... 当撤销派生类对象时, 析构函数的调用正好相反 32

33 class Base1 { int ; public: Base1(int a){ =a;cout<<" 调用基类 1 的构造函数!\n"; } ~Base1( ){ cout<<" 调用基类 1 的析构函数!\n"; } class Base2 { int y; public: Base2(int a){ y=a;cout<<" 调用基类 2 的构造函数!\n"; } ~Base2( ){ cout<<" 调用基类 2 的析构函数!\n"; } 先说明基类 2 class Derived:public Base2, public Base1{ int z; public: Derived(int a,int b):base1(a),base2(20) {z=b; cout<<" 调用派生类的构造函数!\n";} ~Derived( ){cout<<" 调用派生类的析构函数!\n";} void main(void) { Derived c(100,200); 33 } 调用基类 2 的构造函数 调用基类 1 的构造函数 调用派生类的构造函数 调用派生类的析构函数 调用基类 1 的析构函数 调用基类 2 的析构函数

34 class Derived:public Base2, public Base1{ int z; 基类子对象 Base1 b1,b2; public: 基类成员构造基类子对象构造 Derived(int a,int b):base1(a),base2(20), b1(200),b2(a+b) {z=b; cout<<" 调用派生类的构造函数!\n";} ~Derived( ){cout<<" 调用派生类的析构函数!\n";} void main(void) { Derived c(100,200); } 基类成员构造用基类名, 基类子对象构造用对象名 34

35 class Base1 { int ; public: Base1(int a){ =a;cout<<" 调用基类 1 的构造函数!\n"; } ~Base1( ){ cout<<" 调用基类 1 的析构函数!\n"; } class Base2 { int y; public: Base2(int a){ y=a;cout<<" 调用基类 2 的构造函数!\n"; } ~Base2( ){ cout<<" 调用基类 2 的析构函数!\n"; } class Derived:public Base2, public Base1{ int z; Base1 b1,b2; public: Derived(int a,int b):base1(a),base2(20), b1(200),b2(a+b) {z=b; cout<<" 调用派生类的构造函数!\n";} ~Derived( ){cout<<" 调用派生类的析构函数!\n";} void main(void) { Derived c(100,200); 35 }

36 调用基类 2 的构造函数调用基类 1 的构造函数 调用基类 1 的构造函数 调用基类 1 的构造函数调用派生类的构造函数调用派生类的析构函数 调用基类 1 的析构函数 调用基类 1 的析构函数 调用基类 1 的析构函数 调用基类 2 的析构函数 说明基类 1 的对象 b1,b2 36

37 class Base1 { int ; public: Base1(int a); ~Base1( ); class Base2 { int y; public: Base2(int a); ~Base2( ); Base1 Base2 Base1() ~Base1() y Base2() ~Base2() class Derived:public Base2, public Base1{ int z; Base1 b1,b2; public: Derived(int a,int b); ~Derived( ); Derived b1 b2 Base1() ~Base1() y Base2() ~Base2() Base1() ~Base1() Base1() ~Base1() z Derived() ~Derived 37

38 冲突 派生类对象 A B A() B() public D A() B() D v; v.=5; 产生了冲突 C C() C() d A::v.=5; 用类作用符限定 D() 38

39 class A{ public: int ; void Show(){cout <<"="<<<<'\n';} 这时, 可以利用类作用 A(int a=0){=a;} 域符 :: 来指明数据或函 数的来源 class B{ public: int ; 如 :A::=a; void Show(){cout <<"="<<<<'\n';} c1.b::show(); B(int a=0){=a;} class C:public A,public B{ int y; public: void Set(int a){ =a;} //c1 对象中有两个 成员 void Sety(int b){y=b;} int Gety() {return y;} void main(void) 39 { C c1; c1.show(); //c1 对象中有两个 Show() 函数 }

40 支配规则 基类成员 A public D A() A() 5 派生类新增成员 D() D v; v.=5; 当派生类中新增加的数据或函数与基类中原有的同名时, 若不加限制, 则优先调用派 生类中的成员 40

41 class A{ public: int ; void Show(){cout <<"="<<<<'\n';} class B{ public: int y; void Show(){cout <<"y="<<y<<'\n';} class C:public A,public B{ public: int y; // 类 B 和类 C 均有 y 的成员 void main(void) { C c1; c1.=100; c1.y=200; // 给派生类中的 y 赋值 c1.b::y=300; // 给基类 B 中的 y 赋值 c1.a::show(); c1.b::show(); // 用作用域运算符限定调用的函数 cout <<"y="<<c1.y<<'\n'; // 输出派生类中的 y 值 cout <<"y="<<c1.b::y<<'\n'; // 输出基类 B 中的 y 值 } 当派生类中新增加的 数据或函数与基类中 原有的同名时, 若不 加限制, 则优先调用 派生类中的成员 41

42 class A{ public: int ; A(int a=0) { =a;} class B{ public: int y; B(int a=0) { y=a;} class C:public A{ int z; B b1; A a1; public: C(int a,int b,int m):a(a),b1(b),a1(a+b){ z=m; } void Show( ){ cout<<"="<<<<'\t'; cout<<"y="<<b1.y<<'\t'; cout<<"="<<z<<'\n'; cout<<"a1.="<<a1.<<endl; } void main(void) { C c1(100,200,500); c1.show();} 从基类 A 中继承 新说明类 A 对象中的 从基类 A 中继承 在类 C 中新说明 在类 C 中新说明 在类 C 中新说明 在类 C 中新说明 z Show() a1. b1.y C 的对象所占空间 42

43 基类与对象成员 任一基类在派生类中只能继承一次, 否则, 会造成成员名的冲突 若在派生类中, 确实要有二个以上基类的成员, 则可用基类的二个对象作为派生类的成员 把一个类作为派生类的基类或把一个类的对象作为一个类的成员, 在使用上是有区别的 : 在派生类中可直接使用基类的成员 ( 访问权限允许的话 ), 但要使用对象成员的 成员时, 必须在对象名后加上成员运算符. 和成 员名 43

44 在平面上作两个点, 连一直线, 求直线的长度和直线中点的坐标 基类为 Dot, 有两个公有数据成员, 即平面上的坐标 (,y), 同时有构造函数及打印函数 派生类为 Line, 有两个基类 Dot 对象, 分别存放两点的坐标, 同时, 从基类继承了一个 Dot 数据, 存放直线中点的坐标 44

45 y Dot(,y)( 构造 ) Dot(&dot)( 拷贝 ) Show() Dot 的对象空间 Line 对象空间 ( 中点 ) y( 中点 ) Dot(,y) Dot(&dot) Show() y d1 Dot(.y) Dot(&dot) Show() y d2 Dot(,y) Dot(&dot) Show() Line(dot1,dot2) Showl() 从基类继承 基类对象 45

46 class Dot{ public: float,y; 用坐标初始化 Dot 对象 Dot(float a=0,float b=0){ =a; y=b;} void Show(void){cout<<"="<<<<'\t'<<"y="<<y<<endl;} class Line:public Dot{ Dot d1,d2; 打印坐标 在 Line 中新说明的成员 public: Line(Dot dot1,dot dot2):d1(dot1),d2(dot2) { =(d1.+d2.)/2; y=(d1.+d2.y)/2;} 对成员初始化 void Showl(void){ cout<<"dot1: "; d1.show(); cout<<"dot2: "; d2.show(); cout<<"length="<<sqrt((d1.-d2.)*(d1.-d2.)+(d1.y-d2.y)*(d1.y-d2.y))<<endl; cout<<"center: "<<"="<<<<'\t'<<"y="<<y<<endl; } void main(void) { float a,b; cout<<"input Dot1: \n"; cin>>a>>b; Dot dot1(a,b);// 调用 Dot 的构造函数 cout<<"input Dot2: \n"; cin>>a>>b; Dot dot2(a,b); Line line(dot1,dot2); line.showl();},y 是继承基类的成员 46

47 赋值兼容规则 相互之间能否赋值? 基类对象 Base b; 派生类对象 Derive d; 可以将派生类对象的值赋给基类对象 反之不行 b = d; 只是将从基类继承来的成员赋值 47

48 y Dot(,y) Dot(&dot) Show() Dot 的对象空间 Dot dot; Line line; dot=line; line=dot; Line 的对象空间 非法 d1 d2 y Dot(,y) Dot(&dot) Show() y Dot(.y) Dot(&dot) Show() y Dot(,y) Dot(&dot) Show() Line() Showl() 从基类继承 基类对象 48

49 可以将一个派生类对象的地址赋给基类的指针变 量 Base *basep; basep=&b; 基类指针派生类对象 basep 只能引用 从基类继承来 basep = &d 的成员 基类对象基类对象 basep Base b; basep 派生类对象 Derive d; 49

50 派生类对象可以初始化基类的引用 Derive d; Base basei=&d; 派生类对象 basei 只能引用从基类继承来 基类引用 的成员 基类对象 别名 basei 派生类对象 Derive d; Base b; 50

51 class A{ public: int ; A(int a=0) { =a;} class B{ public: int y; B(int a=0) { y=a;} class C:public A,public B{ int z; public: C(int a,int b,int m): A(a), B(b) { z=m; } void Show( ){ cout<<"="<<<<'\t'; cout<<"y="<<y<< \t ; cout<<"z="<<z<<'\n'; } void main(void) { A a1(100); B b1(200); C c1(10,20,50); } a1.=100 b1.y=200 =10 y=20 z=50 a1.=10 b1.y=20 cout<<"a1.="<<a1.<<endl; cout<<"b1.y="<<b1.y<<endl; c1.show(); a1=c1; b1=c1;// 派生类对象向基类对象赋值 cout<<"a1.="<<a1.<<endl; cout<<"b1.y="<<b1.y<<endl; A *p; p=&c1; // 基类指针指向派生类对象 p->show(); a1 b1 100 A( ) 200 y B( ) c1 A( ) y B( ) z C( ) Show( ) 错误 51!

52 虚基类 类 B 是类 A 的派生类类 C 是类 A 的派生类 类 A 拷贝 A() y B 类 类 D 是类 B 和类 C 的派生类 B() 这样, 类 D 中就有两份类 A 的拷贝 A() A() A() y z A 类 B() C() B 类 C 类 类 A 拷贝 A() z C() d D() D 类 52 C 类

53 这种同一个公共的基类在派生类中产生多个拷贝, 不仅多占用了存储空间, 而且可能会造成多个拷贝中的数据不一致和模糊的引用 类 A 拷贝 类 A 拷贝 A() y B() A() z B 类 C 类 C() D d; d.=10; // 模糊引用 d D() D 类 53

54 class A{ public: int ; A(int a=0) { =a;} class B:public A{ public: int y; B(int a=0,int b=0):a(a) { y=b;} class C:public A{ public: int z; C(int a,int c):a(a){ z=c; } class D:public B,public C{ public: int d; D(int a1,int b,int c,int d,int a2):b(a1,b),c(a2,c) { d=d;} 模糊引用, 错误! void main(void) { D d1(10,20,30,40,50); cout<<d1.<<endl; } A() y B() A() z C() d D() D 类 a1=10 b=20 a2=50 c=30 d=40 54

55 在多重派生的过程中, 若使公共基类在派生类中只有一个拷贝, 则可将这种基类说明为虚基类 在派生类的定义中, 只要在基类的类名前加上关键字 virtual, 就可以将基类说明为虚基类 class B:public virtual A{ public: int y; B(int a=0, int b=0 ):A(b) { y=a;} 55

56 一份拷贝, 在 D( ) 的构造函数中直接调用 A() A() A() A() A() 由虚基类派生出的对象初始 A 类 y z y 化时, 直接调用虚基类的构 B() B 类 C() C 类 B() z C() d D() 造函数 因此, 若将一个类 定义为虚基类, 则一定有正 确的构造函数可供所有派生 类调用 D 类 56

57 class A{ void main(void) public: int ; { D d1(10,20,30,40,50); A(int a=0) { =a;} cout<<d1.<<endl; d1.=400; class B:public virtual A{ cout<<d1.<<endl; public: int y; cout<<d1.y<<endl; B(int a=0,int b=0): A(a) {y=b;} } class C:public virtual A{ 50 0 public: int z; C(int a=0,int c=0):a(a){z=c; } class D:public B,public C{ 直接在派生类中调用虚基类的构造函数 public: int d; D(int a1,int b,int c,int d,int a2):b(a1,b),c(a2,c), A(a2) { d=d;} 没有对虚基类构造函数的调用, 用缺省的构造函数 57

58 再次强调, 用虚基类进行多重派生时, 若虚基类没有缺省的构造函数, 则在每一个派生类的构造函数中都必须有对虚基类构造函数的调用 ( 且首先调用 ) 58

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double

More information

OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课

OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课 复习 Java 包 创建包 : package 语句, 包结构与目录结构一致 使用包 : import restaurant/ - people/ - Cook.class - Waiter.class - tools/ - Fork.class

More information

幻灯片 1

幻灯片 1 信息科学技术学院 程序设计实习 郭炜微博 http://weibo.com/guoweiofpku http://blog.sina.com.cn/u/3266490431 刘家瑛微博 http://weibo.com/pkuliujiaying 1 信息科学技术学院 程序设计实习 郭炜刘家瑛 继承和派生 ( 教材 P215) 2 继承和派生的概念 继承 : 在定义一个新的类 B 时, 如果该类与某个已有的类

More information

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d

More information

Microsoft PowerPoint - 第06讲_继承.ppt [兼容模式]

Microsoft PowerPoint - 第06讲_继承.ppt [兼容模式] 程序设计实习 (I): C++ 程序设计 第六讲继承 上节内容回顾 三种运算符重载的实现方式 重载为普通函数 重载为成员函数 重载为友元 常见的运算符重载 流运算符 (>>

More information

面向对象的程序设计 : 抽象 继承和多态 Dongke Sun (Southeast University) C++ Programming and Algorithms April 12, / 38

面向对象的程序设计 : 抽象 继承和多态 Dongke Sun (Southeast University) C++ Programming and Algorithms April 12, / 38 程序设计与算法语言 继承与派生 C/C++ Programming and Algorithms Inheritance and Derivation Dongke Sun ( 孙东科 ) dksun@seu.edu.cn 东南大学机械工程学院 School of Mechanical Engineering Southeast University April 12, 2018 面向对象的程序设计

More information

Microsoft PowerPoint - 04-Inheritance.ppt

Microsoft PowerPoint - 04-Inheritance.ppt 继承 派生与多态性 1 本章主要内容 类的继承与派生 类成员的访问控制 简单继承与多重继承 派生类的构造 析构函数 多态性 2 1 类的继承与派生 保持已有类的特性, 并在其基础上产生新的类, 称新类继承了已有类的特征, 或称已有类派生出新类 被继承的已有类称为基类 ( 或父类 ) 派生出的新类称为派生类 派生类将自动继承基类的所有特性 ( 属性和方法 ) 派生类可以定义新的特性 ( 属性和方法 )

More information

Microsoft PowerPoint - 8. 运算符重载 Operator Overloading.pptx

Microsoft PowerPoint - 8. 运算符重载 Operator Overloading.pptx 运算符重载 Operator Overloading class Point { public: ; double x_, y_; Why Operator Overloading? Point (double x =0, double y = 0):x_(x),y_(y) { int main(){ Point a(1., 2), b(3,4); Point c = a + b; return 0;

More information

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d =

More information

Modeling & Simulation 数学原理 物理规律和程序设计的综合 Magic Fluids Heart Simulator Dongke Sun (Southeast University) C++ Programming and Algorithms April 23,

Modeling & Simulation 数学原理 物理规律和程序设计的综合 Magic Fluids Heart Simulator Dongke Sun (Southeast University) C++ Programming and Algorithms April 23, 程序设计与算法语言 继承与派生 C/C++ Programming and Algorithms Inheritance and Derivation Dongke Sun ( 孙东科 ) dksun@seu.edu.cn 东南大学机械工程学院 School of Mechanical Engineering Southeast University April 23, 2018 Modeling

More information

无类继承.key

无类继承.key 无类继承 JavaScript 面向对象的根基 周爱 民 / aimingoo aiming@gmail.com https://aimingoo.github.io https://github.com/aimingoo rand = new Person("Rand McKinnon",... https://docs.oracle.com/cd/e19957-01/816-6408-10/object.htm#1193255

More information

extend

extend (object oriented) Encapsulation Inheritance Polymorphism Dynamic Binding (base class) (derived class) 1 class Base { int I; void X(); void Y(); class Derived: public Base { private: int j; void z(); Derived

More information

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 复习 Java 包 创建包 : package 语句, 包结构与目录结构一致 使用包 : import restaurant/ - people/ - Cook.class - Waiter.class - tools/ - Fork.class - Table.class

More information

第七讲 继承与多态

第七讲  继承与多态 第 七 章 继 承 与 派 生 1 本 章 主 要 内 容 的 继 承 成 员 的 访 问 控 制 单 继 承 与 多 继 承 派 生 的 构 造 析 构 函 数 成 员 的 标 识 与 访 问 深 度 探 索 2 的 继 承 与 派 生 的 继 承 与 派 生 保 持 已 有 的 特 性 而 构 造 新 的 过 程 称 为 继 承 在 已 有 的 基 础 上 新 增 自 己 的 特 性 而 产 生

More information

1 下列类头定义中, 正确的是 面向对象程序设计网络课程 A class x { } B public x extends y { } C public class x extends y {.} D class x extends y implements y1 { } 2 现有两个类 A B,

1 下列类头定义中, 正确的是 面向对象程序设计网络课程 A class x { } B public x extends y { } C public class x extends y {.} D class x extends y implements y1 { } 2 现有两个类 A B, 1 下列类头定义中, 正确的是 A class x B public x extends y C public class x extends y. D class x extends y implements y1 2 现有两个类 A B, 以下描述中表示 B 继承自 A 的是 (D ) A) class A extends B B) class B implements A C) class A

More information

OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票

OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票 复习 创建对象 构造函数 函数重载 : 函数 = 函数名 + 参数列表 public class MyType { int i; double d; char c; void set(double x)

More information

Chapter12 Derived Classes

Chapter12   Derived Classes 继 承 -- 派 生 类 复 习 1. 有 下 面 类 的 说 明, 有 错 误 的 语 句 是 : class X { A) const int a; B) X(); C) X(int val) {a=2 D) ~X(); 答 案 :C 不 正 确, 应 改 成 X(int val) : a(2) { 2. 下 列 静 态 数 据 成 员 的 特 性 中, 错 误 的 是 A) 说 明 静 态 数

More information

软件工程文档编制

软件工程文档编制 实训抽象类 一 实训目标 掌握抽象类的定义 使用 掌握运行时多态 二 知识点 抽象类的语法格式如下 : public abstract class ClassName abstract void 方法名称 ( 参数 ); // 非抽象方法的实现代码 在使用抽象类时需要注意如下几点 : 1 抽象类不能被实例化, 实例化的工作应该交由它的子类来完成 2 抽象方法必须由子类来进行重写 3 只要包含一个抽象方法的抽象类,

More information

Microsoft PowerPoint - CPP-Ch Print.ppt [兼容模式]

Microsoft PowerPoint - CPP-Ch Print.ppt [兼容模式] Chapter 13 Object-Oriented Programming: Polymorphism http://jssec.seu.edu.cn 杨明 yangming2002@seu.edu.cn OBJECTIVES What polymorphism( 多态 ) is, how it makes programming more convenient, and how it makes

More information

Microsoft Word - 新1-12.doc

Microsoft Word - 新1-12.doc 实训 5 面向对象编程练习 实训 5 面向对象编程练习 5.1 实训目的 通过编程和上机实验理解 Java 语言是如何体现面向对象编程基本思想 以及如何创建类 和对象 了解成员变量和成员方法的特性 5.2 实训要求 编写一个体现面向对象思想的程序 编写一个创建对象和使用对象的方法的程序 5.3 实训内容 5.3.1 创建对象并使用对象 1 定义一个 Person 类 可以在应用程序中使用该类 成员属性

More information

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP:  ******************* * 关于 Java 测试试题 ****** ******************* * 关于 Java 测试试题 ******************* 問 1 运行下面的程序, 选出一个正确的运行结果 public class Sample { public static void main(string[] args) { int[] test = { 1, 2, 3, 4, 5 ; for(int i = 1 ; i System.out.print(test[i]);

More information

Microsoft PowerPoint - 07 派生数据类型

Microsoft PowerPoint - 07 派生数据类型 能源与动力工程学院 目录 派生类型 陈 斌 固有数据类型 数值型 (numerical) 整型 INTEGER 实型 REAL 复数型 COMPLEX 非数值型 字符型 CHARACTER 逻辑型 ( 布尔型 )LOGICAL 自定义数据类型 ( 派生类型, derived type) 派生类型是指用户利用 Fortran 系统内部类型, 如整型 实型 复数型 逻辑型 字符型等的组合自行创建出一个新的数据类型,

More information

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 复习 Protected 可以被子类 / 同一包中的类访问, 不能被其他类访问 弱化的 private 同时赋予 package access class MyType { public int i; public double d; public char

More information

untitled

untitled 1 7 7.1 7.2 7.3 7.4 7.5 2 7.1 VFT virtual 7.1 3 1 1. 2. public protected public 3. VFT 4. this const volatile 4 2 5. ( ) ( ) 7.1 6. no-static virtual 7.2 7. inline 7.3 5 3 8. this this 9. ( ) ( ) delete

More information

模板

模板 制作人 : 张刚 目录 类和对象 面向对象程序设计基本特征 类的声明 构造方法 成员变量和方法 封装 继承 多态 包 访问控制 final static 抽象类和接口 内部类 沈阳工业大学软件学院 Java 课程教研组 Page 2 核心知识点 类 对象 三个基本特征 类的基本结构 成员变量 构造方法 成员方法 类实例 对象创建和操作 沈阳工业大学软件学院 Java 课程教研组 Page 3 1.

More information

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 复习 Protected 可以被子类 / 同一包中的类访问, 不能被其他类访问 弱化的 private 同时赋予 package access class MyType { public int i; public double d; public char

More information

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 月 3 日 1 1 INPUTOUTPUT 1 InputOutput 题目描述 用 cin 输入你的姓名 ( 没有空格 ) 和年龄 ( 整数 ), 并用 cout 输出 输入输出符合以下范例 输入 master 999 输出 I am master, 999 years old. 注意 "," 后面有一个空格,"." 结束,

More information

第一次段考 二年級社會領域試題 郭玉華 (A)(B) (C)(D)

第一次段考   二年級社會領域試題 郭玉華   (A)(B) (C)(D) 五 福 二 社 p1 高 雄 市 立 五 福 國 民 中 學 97 學 年 度 第 1 學 期 第 1 次 段 考 二 年 級 社 會 學 習 領 域 試 題 卷 代 號 :30 答 案 卡 塗 寫 注 意 事 項 1. 答 案 卡 劃 記 時, 必 須 用 黑 色 2B 鉛 筆 塗 黑 塗 滿, 但 不 可 超 出 圈 外 2. 年 班 級 座 號 科 目 請 劃 記 正 確 若 劃 記 錯 誤,

More information

Microsoft PowerPoint - L17_Inheritance_v4.pptx

Microsoft PowerPoint - L17_Inheritance_v4.pptx C++ Programming Lecture 17 Wei Liu ( 刘 威 ) Dept. of Electronics and Information Eng. Huazhong University of Science and Technology May. 2015 Lecture 17 Chapter 20. Object-Oriented Programming: Inheritance

More information

(E). (A) (B) (C) (D) (E). (A) (B) (C) (D) (E) (A) (B) (C) (D) (E) (A) (B) (C) (D). ( ) ( ) ( ) ( ) ( ) ( ) (A) (B) (C) (D) (E). (A) (B) (C) (D) (E). (

(E). (A) (B) (C) (D) (E). (A) (B) (C) (D) (E) (A) (B) (C) (D) (E) (A) (B) (C) (D). ( ) ( ) ( ) ( ) ( ) ( ) (A) (B) (C) (D) (E). (A) (B) (C) (D) (E). ( . (A) (B) (C) (D) (E). ( ) ( ) ( ) ( ) ( ) ( ) (A) (B) (C) (D) (E) (A) (B) (C) (D) (E). (A) (B) (C) (D) (E). (A) (B) (C) (D) (E). 1950 (A) (B) (C) (D) (E). 60 70 (A) (B) (C) (D) (E). ( ) ( ) ( ) ( ) (

More information

提纲 1 联编与多态性 2 用虚函数实现多态 3 虚函数的工作原理 4 纯虚函数与抽象类 5 总结与思考 Dongke Sun (Southeast University) C++ Programming and Algorithms April 12, / 36

提纲 1 联编与多态性 2 用虚函数实现多态 3 虚函数的工作原理 4 纯虚函数与抽象类 5 总结与思考 Dongke Sun (Southeast University) C++ Programming and Algorithms April 12, / 36 程序设计与算法语言 虚函数 C/C++ Programming and Algorithms Virtual Function Dongke Sun ( 孙东科 ) dksun@seu.edu.cn 东南大学机械工程学院 School of Mechanical Engineering Southeast University April 12, 2018 提纲 1 联编与多态性 2 用虚函数实现多态

More information

OOP with Java 通知 Project 4: 推迟至 4 月 25 日晚 9 点

OOP with Java 通知 Project 4: 推迟至 4 月 25 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 推迟至 4 月 25 日晚 9 点 复习 Protected 可以被子类 / 同一包中的类访问, 不能被其他类访问 弱化的 private 同时赋予 package access class MyType { public int i; public double d; public

More information

1832 6 1863 1872 1875 1877 187 1879 3 1 2 4 1880 1824 1862 3 186 1865 1870 1872 1877 1879 1882 500

1832 6 1863 1872 1875 1877 187 1879 3 1 2 4 1880 1824 1862 3 186 1865 1870 1872 1877 1879 1882 500 1949 61 72 1985 38 21 9 36 1985 212 326 1141 18 3 85 1592 6 1832 6 1863 1872 1875 1877 187 1879 3 1 2 4 1880 1824 1862 3 186 1865 1870 1872 1877 1879 1882 500 1884 11 8 16 1826 1862 1855 1865 1868 6 1874

More information

Microsoft PowerPoint - 6. 用户定义类型User-defined Datatypes.ppt [兼容模式]

Microsoft PowerPoint - 6. 用户定义类型User-defined Datatypes.ppt [兼容模式] 用户定义类型 User-defined Datatypes classes and structs 几何向量 (Geometry Vector) 二维平面上的向量由起点和终点构成 每个点包含两个坐标 (x, y), 因此一个向量需要四个实数表示 Start= (0.9,1.5) Start= (0.4,0.8) int main() { double xstart = 0.4; double xend

More information

<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074> 程 序 设 计 实 习 INFO130048 3-2.C++ 面 向 对 象 程 序 设 计 重 载 继 承 多 态 和 聚 合 复 旦 大 学 计 算 机 科 学 与 工 程 系 彭 鑫 pengxin@fudan.edu.cn 内 容 摘 要 方 法 重 载 类 的 继 承 对 象 引 用 和 拷 贝 构 造 函 数 虚 函 数 和 多 态 性 类 的 聚 集 复 旦 大 学 计 算 机 科 学

More information

幻灯片 1

幻灯片 1 信息科学技术学院 程序设计实习 郭炜微博 http://weibo.com/guoweiofpku http://blog.sina.com.cn/u/3266490431 刘家瑛微博 http://weibo.com/pkuliujiaying 1 信息科学技术学院 程序设计实习 郭炜刘家瑛 虚函数和多态 (P247) 2 虚函数 在类的定义中, 前面有 virtual 关键字的成员函数就是虚函数

More information

untitled

untitled 3 C++ 3.1 3.2 3.3 3.4 new delete 3.5 this 3.6 3.7 3.1 3.1 class struct union struct union C class C++ C++ 3.1 3.1 #include struct STRING { typedef char *CHARPTR; // CHARPTR s; // int strlen(

More information

untitled

untitled 2016 133 1 7 28 19:00 29 14:00 http://zj.sceea.cn www.sceea.cn APP 1 2 2 6 6 2016 2016 7 28 3 2016 2016 2016 0363 1 17 1 1183 1 18 1 1184 2 41 1 45 1 1205 1 03 1 1210 3 25 1 29 2 1240 4 01 ( ) 4 1291 2

More information

Strings

Strings Inheritance Cheng-Chin Chiang Relationships among Classes A 類 別 使 用 B 類 別 學 生 使 用 手 機 傳 遞 訊 息 公 司 使 用 金 庫 儲 存 重 要 文 件 人 類 使 用 交 通 工 具 旅 行 A 類 別 中 有 B 類 別 汽 車 有 輪 子 三 角 形 有 三 個 頂 點 電 腦 內 有 中 央 處 理 單 元 A

More information

2011-论文选集-2.cdr

2011-论文选集-2.cdr ! "#$# $$ "#$#$$" " $% &%!$ $ "#$$ " ! "!#!$ %" #& # ( #$ ) )& )# )$ ** "& ")! ! "" # $% & &( ( # ) )** )*+ )*$ )) ))" ),+ )," -./ ) ) ) " )++ )+" )%,, !"#" $ ! " #$% & ( & ) % #$% #$% & * #$%#$% #$% (

More information

! "#$%& $()*+#$, $(-.&,./.+#/(-.&01( &-#&(&$# (&2*(,#-3.,14& $ +()5(*-#5(-#/-/#(-1#&-+)(& :;<<= > A B?

! #$%& $()*+#$, $(-.&,./.+#/(-.&01( &-#&(&$# (&2*(,#-3.,14& $ +()5(*-#5(-#/-/#(-1#&-+)(& :;<<= >  A B? ! "#$%& $()*+#$, $(-.&,./.+#/(-.&01( &-#&(&$# (&2*(,#-3.,14& $ +()5(*-#5(-#/-/#(-1#&-+)(&- 67789:;

More information

Microsoft PowerPoint - string_kruse [兼容模式]

Microsoft PowerPoint - string_kruse [兼容模式] Strings Strings in C not encapsulated Every C-string has type char *. Hence, a C-string references an address in memory, the first of a contiguous set of bytes that store the characters making up the string.

More information

穨古代韓國的巫與日官2.PDF

穨古代韓國的巫與日官2.PDF 1 2 3 4 1 1 1997 187-218 221-293 28 1998 477-454 1999 139-207 2 3 4 5 2 16 92000 85-112 202000 197-233 3 1976 4 31967 155-184 5 131990 23-49 1996 605-629 6 7 8 Trois Freres Irkut Malta Malta 9 1973 1982

More information

(A)3 4 (B)5 6 (C)7 9 (D)10 2 (E) (A) (B) (C) (D) (E) ( ) ( ) ( ) (A) (B) (C) (D) (E) (A) (B) (C) (D) (E). (A) (B) (C) (D) (E). (A) (B) (C) (D) (

(A)3 4 (B)5 6 (C)7 9 (D)10 2 (E) (A) (B) (C) (D) (E) ( ) ( ) ( ) (A) (B) (C) (D) (E) (A) (B) (C) (D) (E). (A) (B) (C) (D) (E). (A) (B) (C) (D) ( . (A) (B) (C) (D) (E). (A) (B) (C) (D) (E) (A) (B) (C) (D) (E) (A) (B) (C) (D) (E).. (E) (A) (B) (C) (D). (A) (B) (C) (D) (E). (A) (B) (C) (D) (E). (A) (B) (C) (D) (E) (A) (C) (D) (E) (A) (B) (C) (D) (E)

More information

# # # # # # = #, / / / / # 4 # # # /# 02-1 / 0 /? / 0 / 0? # # / >

# # # # # # = #, / / / / # 4 # # # /# 02-1 / 0 /? / 0 / 0? # # / > # # # # # # #,, # # # # # - #. /#. / 0 #. 0 4 1. 04 0 #. ##1 2-1 0 1. 04 # # # 3 4 0 4 3 < # : # 1 0 5 5 5 # # : # 4 678 #. 0 # 0. #678 # 0 678 678 # 0 # 4 0 : =>8 # 0 =>8 # 4.?@= # 0 0 # 4 # 0 : =>8 0

More information

. (A) (B) (C) A (D) (E). (A)(B)(C)(D)(E) A

. (A) (B) (C) A (D) (E). (A)(B)(C)(D)(E) A . () () () () () (A) (B) (C) B (D) (E). (A) (B) (C) E (D) (E) (A) (B) (C) (D). () () () () E (A) (B) (C) (D) (E). C (A) (B) (C) (D) (E). (A) (B) (C) (D) D (E). () - () - () - () - () - D (A) (B) (C) (D)

More information

= 3 + 1 7 = 22 7 3.14 = 3 + 1 7 + 1 15 +1 = 355 3.1415929 113 221221221221 136136136136 221000000000 221000000 221000 221 = 136000000000 136000000 136000 221 1000000000 1000000 1000 1 = 136 1000000000

More information

Microsoft PowerPoint - 08_OO_CJC.ppt

Microsoft PowerPoint - 08_OO_CJC.ppt C++ 中的 Hello World! C 程序设计语言 第 8 章 OO 与 C++ Java C# 孙志岗 sun@hit.edu.cn http://sunner.cn 兼容 C 语言的 : #include int main() printf("hello,, world!\n"); return 0; 更具 C++ 味道的 : #include int

More information

C++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 1 PERSON 1 Person 题目描述 编写程序, 定义一个基类 Person, 包含 name 和 age 两个数据成员 ; 再由它派生出学生类 Student 和教师类 Teacher, 其中学生类添加学号 no 数据, 教师类添加职称 title 数据 ; 要求每个类均有构造函数 析构函数和显示数据的函数

More information

Guava学习之Resources

Guava学习之Resources Resources 提供提供操作 classpath 路径下所有资源的方法 除非另有说明, 否则类中所有方法的参数都不能为 null 虽然有些方法的参数是 URL 类型的, 但是这些方法实现通常不是以 HTTP 完成的 ; 同时这些资源也非 classpath 路径下的 下面两个函数都是根据资源的名称得到其绝对路径, 从函数里面可以看出,Resources 类中的 getresource 函数都是基于

More information

实 信 用 的 原 则 " 其 中, 诚 实 信 用 原 则 是 指 民 事 主 体 进 行 民 事 活 动 时, 均 应 诚 实, 不 作 假, 不 欺 诈, 不 损 害 他 人 利 益 和 社 会 利 益, 正 当 地 行 使 权 利 和 履 行 义 务 甲 将 平 房 售 与 丙 而 未 告

实 信 用 的 原 则  其 中, 诚 实 信 用 原 则 是 指 民 事 主 体 进 行 民 事 活 动 时, 均 应 诚 实, 不 作 假, 不 欺 诈, 不 损 害 他 人 利 益 和 社 会 利 益, 正 当 地 行 使 权 利 和 履 行 义 务 甲 将 平 房 售 与 丙 而 未 告 2012 年 司 法 考 试 模 拟 试 题 及 习 题 详 细 解 析 一 单 项 选 择 题, 每 题 所 给 的 选 项 中 只 有 一 个 正 确 答 案 本 部 分 1-50 题, 每 题 1 分, 共 50 分 1 甲 有 平 房 一 间 某 日, 甲 得 知 乙 将 于 该 平 房 南 建 高 楼 一 栋, 一 旦 高 楼 建 成, 该 平 房 即 无 阳 光 可 见 次 日, 甲 将

More information

untitled

untitled 1 Outline 數 料 數 數 列 亂數 練 數 數 數 來 數 數 來 數 料 利 料 來 數 A-Z a-z _ () 不 數 0-9 數 不 數 SCHOOL School school 數 讀 school_name schoolname 易 不 C# my name 7_eleven B&Q new C# (1) public protected private params override

More information

untitled

untitled ... 2...4... 10... 11... 15... 18 A B... 19... 21... 30... 32... 39... 48... 51... 52... 54... 60... 61... 66... 68... 69 A B... 76... 78... 79... 85... 87... 88... 89... 90... 91 1 1 2( )( ) ( ) ( ) (

More information

竞赛报名与报名审核

竞赛报名与报名审核 2014 年 全 国 职 业 院 校 技 能 大 赛 高 职 组 广 东 省 选 拔 赛 工 程 造 价 基 本 技 能 赛 项 竞 赛 指 南 主 办 : 广 东 省 教 育 厅 承 办 : 广 州 城 建 职 业 学 院 协 办 : 广 联 达 软 件 股 份 有 限 公 司 目 录 一. 竞 赛 的 几 个 重 要 时 间...1 二. 竞 赛 时 间 地 点 及 费 用...1 ( 一 )

More information

但 洋 糖 最 终 乘 船 溯 江 而 上, 再 加 上 民 国 初 年 至 抗 战 前 夕 二 十 余 年 间, 四 川 接 连 不 断 遭 受 水 灾 旱 灾 地 震, 平 均 每 月 爆 发 两 次 军 阀 混 战, 乡 村 遭 受 极 大 破 坏,( 赵 泉 民,2007) 农 村 经 济

但 洋 糖 最 终 乘 船 溯 江 而 上, 再 加 上 民 国 初 年 至 抗 战 前 夕 二 十 余 年 间, 四 川 接 连 不 断 遭 受 水 灾 旱 灾 地 震, 平 均 每 月 爆 发 两 次 军 阀 混 战, 乡 村 遭 受 极 大 破 坏,( 赵 泉 民,2007) 农 村 经 济 原 载 黄 宗 智 主 编 : 中 国 乡 村 研 究 ( 第 八 辑 ), 福 州 : 福 建 教 育 出 版 社 2010 年 4 月 第 一 版, 第 196-241 页 北 京 联 合 大 学 李 安 平 抗 战 时 期 四 川 内 江 农 贷 个 案 研 究 摘 要 : 抗 日 战 争 时 期 四 川 内 江 蔗 农 在 承 受 高 利 贷 盘 剥 的 严 酷 境 遇 中, 利 用 中 国

More information

工 序 的 是 ( ) A. 卷 筒 切 筒 装 药 造 粒 B. 搬 运 造 粒 切 引 装 药 C. 造 粒 切 引 包 装 检 验 D. 切 引 包 装 检 验 运 输 7. 甲 公 司 将 其 实 施 工 项 目 发 包 给 乙 公 司, 乙 公 司 将 其 中 部 分 业 务 分 包 给

工 序 的 是 ( ) A. 卷 筒 切 筒 装 药 造 粒 B. 搬 运 造 粒 切 引 装 药 C. 造 粒 切 引 包 装 检 验 D. 切 引 包 装 检 验 运 输 7. 甲 公 司 将 其 实 施 工 项 目 发 包 给 乙 公 司, 乙 公 司 将 其 中 部 分 业 务 分 包 给 2013 年 安 全 工 程 师 法 律 知 识 答 案 解 析 一 单 选 择 题 1. 某 省 人 大 常 务 委 员 会 公 布 实 施 了 某 省 安 全 生 产 条 例, 随 后 省 政 府 公 布 实 施 了 某 省 生 产 经 营 单 位 安 全 生 产 主 体 责 任 规 定, 下 列 关 于 两 者 法 律 地 位 和 效 力 的 说 法, 正 确 的 是 ( ) A. 某 省 安

More information

c_cpp

c_cpp C C++ C C++ C++ (object oriented) C C++.cpp C C++ C C++ : for (int i=0;i

More information

*33*!!! "!! #$! %#! "& "! #! %! # ( ) * # +, # -, # +., $ /# ( ) 0 $ +# ( ) 0 $.# ( ) 0 $ # $! % "" " % 1 % & ( * ) * % " " %.! % 2!!"+# ( "&! " ( "#

*33*!!! !! #$! %#! & ! #! %! # ( ) * # +, # -, # +., $ /# ( ) 0 $ +# ( ) 0 $.# ( ) 0 $ # $! %   % 1 % & ( * ) * %   %.! % 2!!+# ( &!  ( # 588!"! #$$%& &&#! ()! *(+ "! *(, "! (-.! *(/ "! (.! ().! (01! /0! *(. # 2(.! *2. $ *20 3 $! *( % ) % *+ " % * 4 5 6 % - % 0. % 7. *33*!!! "!! #$! %#! "& "! #! %! # ( ) * # +, # -, # +., $ /# ( ) 0 $ +#

More information

Microsoft PowerPoint - 7. 面向对象程序设计-Object-Oriented Programming.ppt [兼容模式]

Microsoft PowerPoint - 7. 面向对象程序设计-Object-Oriented Programming.ppt [兼容模式] 面向对象程序设计 Object-Oriented Programming(OOP) Classes,Inheritance, Polymorphism A Survey of Programming Techniques Unstructured programming, procedural programming, modular programming and object-oriented

More information

第3章.doc

第3章.doc 3 3 3 3.1 3 IT Trend C++ Java SAP Advantech ERPCRM C++ C++ Synopsys C++ NEC C C++PHP C++Java C++Java VIA C++ 3COM C++ SPSS C++ Sybase C++LinuxUNIX Motorola C++ IBM C++Java Oracle Java HP C++ C++ Yahoo

More information

NOWOER.OM m/n m/=n m/n m%=n m%n m%=n m%n m/=n 4. enum string x1, x2, x3=10, x4, x5, x; 函数外部问 x 等于什么? 随机值 5. unsigned char *p1; unsigned long *p

NOWOER.OM m/n m/=n m/n m%=n m%n m%=n m%n m/=n 4. enum string x1, x2, x3=10, x4, x5, x; 函数外部问 x 等于什么? 随机值 5. unsigned char *p1; unsigned long *p NOWOER.OM /++ 程师能 评估. 单项选择题 1. 下 描述正确的是 int *p1 = new int[10]; int *p2 = new int[10](); p1 和 p2 申请的空间 的值都是随机值 p1 和 p2 申请的空间 的值都已经初始化 p1 申请的空间 的值是随机值,p2 申请的空间 的值已经初始化 p1 申请的空间 的值已经初始化,p2 申请的空间 的值是随机值 2.

More information

胞 中 脂 类 的 分 解 和 转 化 病 人 的 基 因 型 是 aa, 下 列 哪 项 可 以 解 释 Aa 型 的 个 体 可 以 像 AA 型 人 那 样 健 康 生 活 ( ) A.Aa 型 的 细 胞 内, 基 因 A 可 以 阻 止 基 因 a 的 转 录 B.Aa 型 的 细 胞 内

胞 中 脂 类 的 分 解 和 转 化 病 人 的 基 因 型 是 aa, 下 列 哪 项 可 以 解 释 Aa 型 的 个 体 可 以 像 AA 型 人 那 样 健 康 生 活 ( ) A.Aa 型 的 细 胞 内, 基 因 A 可 以 阻 止 基 因 a 的 转 录 B.Aa 型 的 细 胞 内 第 3 节 人 类 遗 传 病 一 选 择 题 1. 下 列 情 况 中, 没 有 染 色 体 变 异 过 程 发 生 的 是 ( ) A. 第 5 号 染 色 体 的 短 臂 缺 失 B. 同 源 染 色 体 的 非 姐 妹 染 色 单 体 之 间 的 交 叉 互 换 C. 第 21 号 染 色 体 增 加 了 一 条 D. 用 花 药 培 养 出 单 倍 体 植 株 解 析 : 同 源 染 色

More information

5. 英 国 经 济 学 家 哥 尔 柏 说 : 税 收 这 种 技 术, 就 是 拔 最 高 的 鹅 毛, 听 最 少 的 鹅 叫 此 话 不 免 有 几 分, 但 却 形 象 地 说 明, 制 定 税 收 政 策 必 须 寻 找 一 个 合 适 的 点 依 次 填 入 划 横 线 部 分 最 恰

5. 英 国 经 济 学 家 哥 尔 柏 说 : 税 收 这 种 技 术, 就 是 拔 最 高 的 鹅 毛, 听 最 少 的 鹅 叫 此 话 不 免 有 几 分, 但 却 形 象 地 说 明, 制 定 税 收 政 策 必 须 寻 找 一 个 合 适 的 点 依 次 填 入 划 横 线 部 分 最 恰 2011 年 4 月 24 日 公 务 员 联 考 行 测 试 卷 ( 贵 州 四 川 福 建 黑 龙 江 湖 北 山 西 重 庆 辽 宁 海 南 江 西 天 津 陕 西 云 南 广 西 山 东 湖 南 江 苏 ) 十 七 省 第 一 部 分 言 语 理 解 与 表 达 1. 文 化 的 本 性 在 于 创 造, 其 使 命 与 一 切 墨 守 成 规 刻 板 一 致 千 篇 一 律 都 是 不 相

More information

C++ 程序设计 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1 1 CIRCLE 1 Circle 描述 编写一个圆类 Circle, 实现半径的输入 面积的计算和输出 输入 圆的半径 (double 类型 ) 输出 圆的面积 ( 保留小数点后两位 ) 样例输入 3 样例输出 28.27 提示 圆周率的取值需要比较精确, 以保证计算结果的精度 #include

More information

思明区现代朊务业发展规划

思明区现代朊务业发展规划 思 明 区 十 二 五 商 贸 业 发 展 规 划 思 明 区 是 厦 门 市 中 心 城 区, 商 贸 业 是 拉 动 全 区 经 济 增 长 的 主 导 产 业 之 一 在 建 设 全 国 强 区 和 推 进 岛 内 外 一 体 化 建 设 的 进 程 中, 思 明 区 确 立 了 打 造 商 贸 产 业 集 群 构 建 海 峡 西 岸 经 济 区 重 要 的 消 费 购 物 中 心 的 战 略

More information

运算符重载 为什么要 运算符重载 那些运算符可以重载, 哪些不可以 如何实现运算符重载 实现方式 : 成员函数与非成员函数 类型转换 怎样实现对象与基本数据类型数据的运算 2

运算符重载 为什么要 运算符重载 那些运算符可以重载, 哪些不可以 如何实现运算符重载 实现方式 : 成员函数与非成员函数 类型转换 怎样实现对象与基本数据类型数据的运算 2 第十一讲 运算符重载 与类型转换 运算符重载 为什么要 运算符重载 那些运算符可以重载, 哪些不可以 如何实现运算符重载 实现方式 : 成员函数与非成员函数 类型转换 怎样实现对象与基本数据类型数据的运算 2 为什么要运算符重载 预定义的运算符只针对基本数据类型, 若要对类的对象进行类似的运算, 需要重新定义运算符的功能 运算符重载实质就是函数重载 : 对已有的运算符赋予多重含义, 使得同一个运算符作用于不同类型的数据时导致不同的行为

More information

提问袁小兵:

提问袁小兵: C++ 面 试 试 题 汇 总 柯 贤 富 管 理 软 件 需 求 分 析 篇 1. STL 类 模 板 标 准 库 中 容 器 和 算 法 这 部 分 一 般 称 为 标 准 模 板 库 2. 为 什 么 定 义 虚 的 析 构 函 数? 避 免 内 存 问 题, 当 你 可 能 通 过 基 类 指 针 删 除 派 生 类 对 象 时 必 须 保 证 基 类 析 构 函 数 为 虚 函 数 3.

More information

Microsoft Word - 第3章.doc

Microsoft Word - 第3章.doc 第 3 章 类和对象 Ⅱ 常见考点 常对象的使用方法 常数据成员和常成员函数的使用方法 mutable 数据成员的特点 构造函数中初始化列表的使用方法 explicit 关键字的作用 子对象的使用方法 使用类前向引用声明的情况 子对象构造函数的设计和执行次序 静态子对象的特点 嵌套类和局部类的设计方法与作用 3.1 常对象和常对象成员 3.1.1 要点归纳 1. 常对象常对象是指对象常量, 其一般定义格式如下

More information

! #$ % & ( ) % & ( ) % & ( ) % & ( ) % & ( ) !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! # ################################################### % & % & !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

More information

zt

zt ! " " " " " " " " " " !" %$$#! " "& ((! "!"#!"!" #!#$ "#$!$ "$!"##!"$!!"#!"!" % #$%" % # "% &!!!& ()*+,,-!& ()*+,,-*! "!,-!,-* "!)&*+,,-!)&*+,,-* "&(!$%!"! &!& ()&0,;!/) (&-:A 2-1,;!/) +2(192>*.) /0-1

More information

《米开朗琪罗传》

《米开朗琪罗传》 ! " # ! """"""""""""""""""" """"""""""""""""" """""""""""""""" $% """"""""""""" &# """"""""""""""" %# """"""""""""""" # """""""""""""""!$% """""""""""""""!&!! # $$$$$$$$$$$$$$$$$$ $$$$$$$$$!"#!%& (! "

More information

河 北 省 中 等 职 业 学 校 学 生 数 控 技 术 应 用 专 业 技 能 大 赛 执 委 会 2011 年 5 月 3 日 目 录 一 大 赛 规 程 1 二 组 织 机 构 11 三 比 赛 日 程 13 四 比 赛 规 则 17 ( 一 ) 领 队 指 导 教 师 须 知.17 ( 二

河 北 省 中 等 职 业 学 校 学 生 数 控 技 术 应 用 专 业 技 能 大 赛 执 委 会 2011 年 5 月 3 日 目 录 一 大 赛 规 程 1 二 组 织 机 构 11 三 比 赛 日 程 13 四 比 赛 规 则 17 ( 一 ) 领 队 指 导 教 师 须 知.17 ( 二 2011 年 华 中 数 控 杯 河 北 省 中 等 职 业 学 校 学 生 数 控 技 术 应 用 专 业 技 能 比 赛 参 赛 指 南 主 办 单 位 : 河 北 省 教 育 厅 河 北 省 人 力 资 源 和 社 会 保 障 厅 河 北 省 工 业 和 信 息 化 厅 承 办 单 位 : 石 家 庄 市 教 育 局 石 家 庄 市 职 业 技 术 教 育 协 办 单 位 : 武 汉 华 中

More information

教 案 ( 首 页 ) 课 课 编 号 410105 结 构 力 学 总 计 :80 学 时 名 称 学 分 5 其 中 : 类 别 必 修 课 ( ) 选 修 课 ( ) 理 论 课 ( ) 实 验 课 ( 讲 课 :80 学 时 ) 实 验 : 学 时 任 课 教 师 曹 志 翔 职 称 副 教

教 案 ( 首 页 ) 课 课 编 号 410105 结 构 力 学 总 计 :80 学 时 名 称 学 分 5 其 中 : 类 别 必 修 课 ( ) 选 修 课 ( ) 理 论 课 ( ) 实 验 课 ( 讲 课 :80 学 时 ) 实 验 : 学 时 任 课 教 师 曹 志 翔 职 称 副 教 结 构 力 学 教 案 主 讲 教 师 : 曹 志 翔 2010 年 8 月 教 案 ( 首 页 ) 课 课 编 号 410105 结 构 力 学 总 计 :80 学 时 名 称 学 分 5 其 中 : 类 别 必 修 课 ( ) 选 修 课 ( ) 理 论 课 ( ) 实 验 课 ( 讲 课 :80 学 时 ) 实 验 : 学 时 任 课 教 师 曹 志 翔 职 称 副 教 授 对 象 专 业 班

More information

幻灯片 1

幻灯片 1 第三课类和对象 ( 封装 ) 互联网新技术在线教育领航者 1 内容概述 1. 封装的概念 2. 访问控制 3. 栈类的封装 4. 构造与析构 5.myString 构造函数 6. 构造与析构的次序 7. 类文件写法 8. 对象的内存 9.this 指针初探 10. 构造函数初始值列表 11. 拷贝构造和赋值运算符重载 12. 浅拷贝 13. 深拷贝 14. 成员函数内联 15. 友元 16.const

More information

<4D6963726F736F667420576F7264202D20BEF6B2DFB2CEBFBC32303134B5DA3130C6DAD7DC313131C6DA2E646F63>

<4D6963726F736F667420576F7264202D20BEF6B2DFB2CEBFBC32303134B5DA3130C6DAD7DC313131C6DA2E646F63> 决 策 参 考 第 10 期 ( 总 第 111 期 ) 临 沂 市 人 民 政 府 研 究 室 2014 年 9 月 26 日 关 于 临 沂 义 乌 两 地 电 子 商 务 发 展 情 况 的 考 察 报 告 临 沂 商 城 管 理 委 员 会 临 沂 市 商 贸 物 流 研 究 院 为 进 一 步 加 快 临 沂 电 子 商 务 发 展, 推 动 商 城 国 际 化, 加 快 国 际 商 贸

More information

目录 C++ 基本的程序设计... 1 C++ 对 C 的扩充... 3 类和对象... 5 继承和派生... 9 多态性 函数模板和类模板 输入输出流

目录 C++ 基本的程序设计... 1 C++ 对 C 的扩充... 3 类和对象... 5 继承和派生... 9 多态性 函数模板和类模板 输入输出流 面向对象程序设计 上机实验指导书 临沂大学汽车学院 编写 : 韩晓翠 2015 年 8 月修订 1 目录 C++ 基本的程序设计... 1 C++ 对 C 的扩充... 3 类和对象... 5 继承和派生... 9 多态性... 11 函数模板和类模板... 13 输入输出流... 14 2 C++ 基本的程序设计 一 目的 : 1 熟悉 VC++ 环境的基本命令和功能键 ; 2 掌握 C++ 程序的三大基本结构的输入

More information

,,!!!?,?,!,,,,,,,,,,!,,, : 1 ,,,,!, :, :,?,,,, 2 ( 1 ) 7 0 ( 11 ) ( 12 ) ( 13 ) ( 14 ) ( 15 ) ( 17 ) ( 18 ) ( 19 ) ( 21 ) ( 22 ) ( 23 ) ( 25 ) ( 26 ) ( 27 ) ( 29 ) ( 30 ) ( 31 ) ( 32 ) ( 33 ) ( 34 ) (

More information

Microsoft PowerPoint - 第07讲_多态1.ppt [兼容模式]

Microsoft PowerPoint - 第07讲_多态1.ppt [兼容模式] 程序设计实习 (I): C++ 程序设计 第七讲多态 上节内容回顾 基本概念 : 继承 基类 派生类 派生类的成员组成 可见性 派生类的构造 析构 派生类与基类的指针类型转换 2 回顾 : public 继承 class base { private: int m; public: int q; base(int ti=0):m(i){} }; class derived : public base

More information

zt

zt !!!"# $%& &() *( +, -".&"# +)% /0(," 1(234" 52&%" (6 7&80 9:0((,!! ! 210!"# $%&&%!!"# $%&&% # $%&&%!"#!"# $%& ())(* +,-,.$ /"#* $"0(1"*2 +,*.)3/ ( 4 )$,-2.$( $%& ())(* 3""2 +"* %-")$(* ""2 "- )$(.# 5(6)

More information

chap07.key

chap07.key #include void two(); void three(); int main() printf("i'm in main.\n"); two(); return 0; void two() printf("i'm in two.\n"); three(); void three() printf("i'm in three.\n"); void, int 标识符逗号分隔,

More information

Microsoft Word - chap10.doc

Microsoft Word - chap10.doc 78 10. Inheritance in C++ 我 們 已 介 紹 了 物 件 導 向 程 式 的 第 一 個 主 要 特 性, 即 程 式 可 模 組 化 成 為 類 別 ( 物 件 ), 類 別 具 有 資 料 封 裝 的 特 性 接 下 來 我 們 要 介 紹 物 件 導 向 程 式 的 另 一 個 主 要 特 性, 那 就 是 類 別 具 有 繼 承 的 功 能 繼 承 就 是 重 複

More information

Guava学习之CharSequenceReader

Guava学习之CharSequenceReader CharSequenceReader 类是以 CharSequence 的形式读取字符 CharSequenceReader 类继承自 Reader 类, 除了 remaining() hasremaining() 以及 checkopen() 函数之后, 其他的函数都是重写 Reader 类中的函数 CharSequenceReader 类声明没有用 public 关键字, 所以我们暂时还不能调用这个类

More information

中文模板

中文模板 Journal of Information and Electronics of Guangdong Ocean University Vol.1, No.1, September 2008,pp 48-54 广东海洋大学电子信息学刊 2008 年 9 月第 1 卷 LabVIEW 面向对象编程技术 陈海生 1+ 2, 邓锐 1 ( 广东海洋大学信息学院自动化系, 湛江 524088) 2 ( 广东海洋大学信息学院软件技术系,

More information

相 应 功 能 (5) 再 将 Boy 类 作 为 Girl 类 的 友 元 类, 在 Boy 类 的 某 成 员 函 数 VisitGirl(Girl & ) 中 访 问 Girl 类 的 私 有 成 员, 观 察 编 译 器 给 出 的 信 息 ( 6 ) 删 除 两 个 类 中 的 函 数 V

相 应 功 能 (5) 再 将 Boy 类 作 为 Girl 类 的 友 元 类, 在 Boy 类 的 某 成 员 函 数 VisitGirl(Girl & ) 中 访 问 Girl 类 的 私 有 成 员, 观 察 编 译 器 给 出 的 信 息 ( 6 ) 删 除 两 个 类 中 的 函 数 V 面 向 对 象 程 序 设 计 及 C++ 课 程 实 验 教 学 大 纲 课 程 编 号 : B030001S 课 程 名 称 : 面 向 对 象 程 序 设 计 及 C++ 课 内 总 学 时 : 3 上 机 实 验 学 时 : 8 一 实 验 课 程 的 性 质 目 的 和 任 务 性 质 : 本 实 验 课 程 是 本 科 理 工 科 各 专 业 学 生 的 通 识 基 础 课, 该 实 验

More information

bnb.PDF

bnb.PDF 2003 1 39 2003 2 39 2003 3 39 2003 M 4 39 2003 5 39 2003 6 39 2003 7 39 2 4 2003 8 39 2003 2002 11 22 D05D06 4,708,777.00 9 39 2003 18 10 39 2003 11 39 2003 [2003]A271 2003 6 30 2003 1-6 2003 1-6 2003

More information

试卷

试卷 ( 试 题 中 凡 主 观 题 答 案 意 思 对 即 可, 若 与 答 案 不 同 而 言 之 成 理, 亦 可 酌 情 给 分 ) 一 ~ 二 (45 分 ) 1.B( 原 文 并 未 说 网 络 社 会 生 态 系 统 的 核 心 与 现 实 社 会 生 态 系 统 的 核 心 不 同 ) 2.D( 服 务 网 络 收 集 到 的 数 据 要 和 关 系 网 络 的 数 据 整 合 在 一 起,

More information

农银人寿发[2013]102号-4 农银寰宇至尊高端医疗保险条款

农银人寿发[2013]102号-4 农银寰宇至尊高端医疗保险条款 农 银 人 寿 [2013] 医 疗 保 险 004 号 请 扫 描 以 查 询 验 证 条 款 农 银 寰 宇 至 尊 高 端 医 疗 保 险 条 款 阅 读 指 引 本 阅 读 指 引 有 助 于 您 理 解 条 款, 对... 本 主 险 合 同... 内 容 的 解 释 以 条 款 为 准... C 您 拥 有 的 重 要 权 益 v 本 主 险 合 同 提 供 的 保 障 第 二 章 v

More information

C++ 程序设计 告别 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 告别 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 告别 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 1 TEMPLATE 1 Template 描述 使用模板函数求最大值 使用如下 main 函数对程序进行测试 int main() { double a, b; cin >> a >> b; cout c >> d; cout

More information

ch08.PDF

ch08.PDF 8-1 CCNA 8.1 CLI 8.1.1 8-2 8-3 8.1.21600 2500 1600 2500 / IOS 8-4 8.2 8.2.1 A 5 IP CLI 1600 2500 8-5 8.1.2-15 Windows 9598NT 2000 HyperTerminal Hilgraeve Microsoft Cisco HyperTerminal Private Edition (PE)

More information

OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料

OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢   学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 Email: 51141201063@ecnu.cn 学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料 OOP with Java Java 类型 引用 不可变类型 对象存储位置 作用域 OOP

More information

untitled

untitled (encapsulation) 例 類 說 類 料 來 料 information hiding 念 (inheritance) 來說 類 類 類 類 類 類 行 利 來 (polymorphism) 不 類 數 不 1 2 3 4 類 類 不 類 不 類 5 6 7 // virtual 不見了 #include #include using namespace

More information

2007年普通高等学校招生全国统一考试

2007年普通高等学校招生全国统一考试 高 考 语 文 陕 西 卷 试 题 以 及 答 案 解 析 本 试 卷 分 第 Ⅰ 卷 ( 选 择 题 ) 和 第 Ⅱ 卷 1 至 4 页, 第 Ⅱ 卷 5 至 8 页 考 试 结 束 后, 将 本 试 卷 和 答 题 卡 一 并 交 回 第 Ⅰ 卷 注 意 事 项 : 1. 答 题 前, 考 生 在 答 题 卡 上 务 必 用 直 径 0.5 毫 米 黑 色 墨 水 签 字 笔 将 自 己 的 姓

More information

Ps22Pdf

Ps22Pdf A B C D A B C D A B C D a a b c x x x x x x x x x x x x x x x x x a b c x a x x x x x x x x x x a b a b a b x x x x x x x x x x x x A B C A B C A B A B A x B C x D A B C a b c a b x x x x x x x A B A

More information

滴 水 之 恩 當 湧 泉 相 報 得 獎 者 : 余 乃 成 指 導 老 師 : 張 月 娟 時 時 感 恩, 生 活 才 有 意 義 ; 常 常 圖 報, 生 命 才 有 價 值 我 從 小 就 受 人 恩 惠, 也 儘 量 回 報 人 家, 因 此 我 的 感 觸 特 別 深 刻 我 的 爸

滴 水 之 恩 當 湧 泉 相 報 得 獎 者 : 余 乃 成 指 導 老 師 : 張 月 娟 時 時 感 恩, 生 活 才 有 意 義 ; 常 常 圖 報, 生 命 才 有 價 值 我 從 小 就 受 人 恩 惠, 也 儘 量 回 報 人 家, 因 此 我 的 感 觸 特 別 深 刻 我 的 爸 登 陸 月 球, 不 爭 第 一 得 獎 者 : 鄒 廷 祐 指 導 老 師 : 詹 美 春 我 們 大 家 都 只 知 道 第 一 位 登 陸 月 球 的 太 空 人 是 阿 姆 斯 壯, 還 留 下 一 句 名 言 : 這 是 我 的 一 小 步, 卻 是 人 類 的 一 大 步 可 是 從 來 沒 有 人 知 道 登 陸 月 球 的 第 二 位 太 空 人 是 奧 德 倫 看 完 這 篇 動

More information

1.5招募说明书(草案)

1.5招募说明书(草案) PUBLIC 2014 1 PUBLIC - 1 2014 1 PUBLIC - 2 2014 1 PUBLIC - 3 2014 1 PUBLIC - 4 2014 1 PUBLIC - 5 2014 1 PUBLIC - 6 2014 1 PUBLIC - 7 2014 1 PUBLIC - 8 2014 1 PUBLIC - 9 2014 1 PUBLIC - 10 2014 1 PUBLIC

More information

( )1

(   )1 ( )1. 如 圖 為 某 生 物 細 胞 行 減 數 分 裂 過 程 之 一, 正 常 情 況 下, 分 裂 完 成 後 子 細 胞 染 色 體 為 下 列 何 者? ( )2. 在 細 胞 的 分 裂 過 程 中,50 個 精 母 細 胞 與 50 個 卵 母 細 胞, 經 減 數 分 裂 後, 分 別 產 生 M 個 成 熟 的 精 配 子 細 胞 和 N 個 成 熟 的 卵 配 子 細 胞

More information

C++ 程序设计 实验 3 - 参考答案 MASTER 2017 年 5 月 21 日 1

C++ 程序设计 实验 3 - 参考答案 MASTER 2017 年 5 月 21 日 1 C++ 程序设计 实验 3 - 参考答案 MASTER 2017 年 5 月 21 日 1 1 圆 1 圆 设计圆类 包含 包含基本属性和基本属性访问接口 计算面积和周长接口 2 1 圆 1 #include 2 using namespace std ; 3 c l a s s CCircle 4 { 5 p r i v a t e : 6 double r ; 7 const

More information

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 odps-sdk 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基 开放数据处理服务 ODPS SDK SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基础功能的主体接口, 搜索关键词 "odpssdk-core" 一些

More information