C++基础

来源:互联网 发布:mac硬盘全抹除 编辑:程序博客网 时间:2024/05/06 04:31

类和对象:

C++中扩展了结构体,可以包含有函数,缺省情况下还是和C语言一样,成员都是公有的。

 

不能在类的声明中给数据成员赋初值,只有在类对象定义之后才能赋初值。

 

数据成员可以使任何数据类型,但是不能用自动(auto)、寄存器(register)、或者外部(extern)进行说明。

 

隐式定义:直接将函数定义在类的内部

显式定义:在定义内置函数时,将它放在类定义体外。为了仍然起到内置函数的作用,冠以inline。内置函数可以提高效率,一般对非常简单的函数才声明为内置函数。

 

定义对象时,若我们定义的是指向此对象的指针,则访问此对象的成员时,不能用“,”操作符,而应使用“->”操作符。

 

构造函数可以有任意的参数类型,但不能具有返回类型,甚至申明void也不行。

 

构造函数也可以用构造初始化表对数据成员进行初始化 A( int I,char J,float F):i(I),j(J),f(F){},但是如果需要将数据成员存放在堆中或数组中,则应在构造函数中使用赋值语句,x(int I,char C,float F,char N[]):i[I],c(C),f(F){strcopy(name,N);}注意,字符数组必须在函数体内被赋值。

 

析构函数不能重载,一个类中只能有一个析构函数。

 

拷贝构造函数的申明 point(const point &p){}

 

友元函数不是当前类的成员函数,可以访问该类的所有对象的成员,包括私有成员和公有成员,在其函数名前加上关键字friend。

友元函数一般带有一个类的入口函数friend void disp(girl &)

一个类的成员函数作为另一个类的友元函数时,必须先定义这个类。并且在声明友元函数时要加上成员函数所在类的类名。

友元类,当一个类被声明为另一个类的友元时,它的所有的成员函数都成为另一个类的友元函数。

 

对于类对象作为成员,要用初始化表进行初始化。

 Print name;

 girl(char * st,int ag):name(st){age = ag;} //定义类girl的构造函数

 

 

 

 

原创粉丝点击