自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 C++知识点23

1.      友元类:友元类是单向的,如果声明B是我A类的友元类,那么B就可以访问我A的数据成员,但是并不代表我A可以访问B的数据成员;友元类也不能传递。2.      关于建立C++工程:一个类声明在一个.h中,不需要包含头文件,要是要使用友元,还要提前声明友元类。然后在对应的.cpp中定义方法以及其他,包含对应头文件。最后在main.cpp中包含所有头文件,进行调用。

2017-03-12 23:09:46 338

原创 C++知识点22

1.      静态数据成员初始化:只能在类体外初始化,int Box::height = 10;,并且不能使用参数初始化表对静态数据成员进行初始化。   如果在类外使用非私有的静态数据成员时,格式为 Box::height,因为静态数据成员不属于某一个对象。2.      静态成员函数:因为它不属于某一个对象,所以它没有this指针,也不能引用非静态的数据成员,静态成员函数主要用来访问静态数

2017-03-11 22:45:01 336

原创 C++知识点21

1.      动态分配空间:Box *pt = new Box; 或者可以直接 = new Box(12,30,14);进行对象的初始化。2.      对象的赋值和复制:赋值:对已有的对象进行相互的赋值;赋值:从无到有的建立一个对象 Box b1(b2); 或者 Box b1 = b2;3.      静态数据成员:每个对象都共同拥有这个数据成员,而且在还没有创建对象实例的时候,这个静

2017-03-10 16:49:46 261

原创 C++知识点20

1.      指向常对象的常指针变量:Time * const p;2.      指向常对象的指针变量:const Time *p;不能通过p来改变对象的成员数据Time const t1 / const Time t1t1是常对象,任何情况下不被改变void Time::func() const;func是常成员函数,可以引

2017-03-09 22:42:38 328

原创 C++知识点19

1.      常指针:常指针可以指向常变量或者非常变量,那么指向非常变量时,就不允许使用常指针对这个变量进行修改。2.      对于函数的形参:必须保证形参的要求高于或者等于实参的要求。也就是实参为常变量的话,那么形参必须为常变量,才能传入;非常变量的实参可以传给const或者非const的形参。总结一下,就是必须保证形参比实参苛刻,越苛刻就是越加const。详见 C++教科书P93表格。

2017-03-08 19:11:11 373

原创 C++知识点18

1.      常对象:常对象只是保证其中的数据成员不被修改,而不代表常对象中的成员函数也都是常成员函数,不加const修饰,成员函数就还是非const成员函数。常成员函数不能调用另一个非常成员函数。2.      指向对象的常指针:初始化以后,至始至终都指向同一个对象,并且不能被修改,但是能够修改该对象中的成员变量。3.      常变量和常指针:对于常变量,只能用常指针指向它。

2017-03-07 23:28:45 211

原创 C++知识点17

1.      非常成员函数:可以引用常数据成员,但是不能修改;不能引用常对象的数据成员。2.      常数据成员、常成员函数、常对象:1)非成员函数可以引用常数据成员,并对非常数据成员进行修改。2)如果要求所有的成员数据成员都不允许改变,那么可以全部声明为常数据成员,或者直接声明为常对象,并且使用常成员函数进行引用,确保不修改数据成员。3)对于常对象:只能使用常成员函数进行成员数据访问,不

2017-03-06 22:57:22 399

原创 C++知识点16

1.      常对象:常对象不能调用该对象的非const型成员函数。2.      常成员函数:void get_time() const;这样就声明为常成员函数了。3.      使用常成员函数修改常对象的变量:提供了mutable int count;就可以使用常成员函数对常对象的变量进行修改。4.      常数据成员的初始化:必须使用Time::Time(int h):hou

2017-03-05 22:36:02 248

原创 C++知识点14

1.      析构函数的调用:是在函数执行完毕之后调用还是执行完毕之前就调用?2.      普通函数的函数名:即为该函数的入口地址?29点中的为什么要取地址?(答:C语言)3.      指向对象成员函数的方法:1)函数参数的类型和参数的个数需要相同。2)函数返回值的类型相同。3)所属的类相同。

2017-03-03 20:07:58 224

原创 C++知识点13

1.      无参构造函数:Box box1;而不要写成Box box1(); 默认的构造函数时不加括号的。2.      使用默认参数的构造函数:声明Box(int h = 10,int w = 10,int len = 10);  定义时可以不用再指定默认的参数。这带来的问题就是,会出现无参构造函数和默认参数构造函数的歧义,如果调用时,不给出特定的值,那么到底是调用哪一个构造函数呢?这就

2017-03-02 20:05:18 243

原创 C++知识点12

1.      带参数初始化表对数据成员初始化:Student::Student(intn= 0,stringna= "NUL"):num(n),name(na){…},就可以通过Student st(123,”Zhang”);来初始化构造对象,当然可以缺省,例如只初始化学号。构造函数的默认值也可以不加的,Student::Student(intn,stringna ):num(n

2017-03-01 22:19:43 285

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除