C++入门第二天

1.类的定义。

2.封装的两层含义

(1).把属性和方法进行封装。

(2).把属性和方法进行访问控制。

3.类的内部和外部的分辨,类的修饰词,public,private,protect(主要用于继承)的访问区别。

4.类和struct的区别,类不加修饰词会默认是private,而struct不加修饰词就会默认是public,此外类一般会比较方便地定义成员函数,虽然C里面也可以封装,实现成员函数的功能但是相对比较麻烦。此外C++的封装比较漂亮可以封装出非常漂亮的API函数。比之C方便和高效多了。

5.类作为函数的参数,可以是类的指针的指针,类的指针引用等等。

6。普通引用和常量引用(本质是让引用的变量编程只读)。常引用两种:(1).用变量初始化 (2)用字面量初始化。引用就是(类型)*const  a。字面值不是内存,所以需要开辟空间来存,所以const  int &a = 100;(错误示范是int &a=100,因为100不是内存)所以,引用本身只是一个已经存在的变量(内存)别名。

7.内联函数和宏的区别。前者C++编译器直接将函数体插入在函数调用的地方,省去了普通函数调用时候的压栈,跳转和返回的开销。带参数的宏,容易出现问题,如参数为++a等等。内联函数要言简意赅,否则可能不被使用,从而恢复成一个普通函数。

8.函数参数
(1)函数默认参数,注意如果前面有普通的函数参数,必须放在后面,当调用函数不传参数时候就会使用默认参数的值。
(2)函数占位参数,函数调用必须写够参数,除非是 int =0这种默认和占位参数的结合体,那么可以不用写够函数参数也可以。
9.函数重载:函数的参数,类型和顺序任意一个不同都可以由多个重名字的函数定义,此外值得注意的时函数的返回值的类型不做参考评价是否为重载函数的评判标准。最后值得注意的时,函数重载和函数默认参数在一起的时候,在调用的时候会出现二义性,所以要小心。
10.申明一个函数类型:typedef void (f)(int a, int b);申明一个函数指针类型typedef void(*f)(int a,int b);
申明一个函数指针变量 void (*f)(int a,int b)。注意要明白类型和变量的区别,此外函数指针类型比较少见应该多加留意。这样才能去区分好函数重载的问题。
11.最后学习,函数的申明和实现的分离,和C类似,头文件一般用来申明函数,数据类型,类等等,源文件才是具体的实现细节。这在以后的开发中是非常常见的。


猜你喜欢

转载自blog.csdn.net/wisdom712/article/details/80495456