c++常用关键字作用
一、const关键字
1.修饰C++类的成员函数
修饰成员函数的时候,该函数则不能修改类内的成员变量,若是成员变量则编译器会报错。
此处注意mutable关键字就是为了突破这个限制,如果成员变量前面添加了mutable修饰,则const成员函数中时可以修改该变量值的
2.修饰函数的返回值
当用const修饰函数返回值时,那么函数返回值的内容是不可修改的。如果返回值的类型不是指针或引用,可以随意赋值的,不管接受变量是否有const编译都不会报错的。但如果返回值是指针或者引用,则只能赋值给const类型的接收变量,否则编译会报错
3.修饰函数的形参
函数Func内部就不能通过传进来的指针和引用,修改对应内存的值了,同时也解决了需要构造临时对象的问题
二、explicit关键字
explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的,
而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式).
简单的说就是,explicit 禁止类构造函数的隐式转换