一、const关键字
1.修饰C++类的成员函数
修饰成员函数的时候,该函数则不能修改类内的成员变量,若是成员变量则编译器会报错。
此处注意mutable关键字就是为了突破这个限制,如果成员变量前面添加了mutable修饰,则const成员函数中时可以修改该变量值的
2.修饰函数的返回值
当用const修饰函数返回值时,那么函数返回值的内容是不可修改的。如果返回值的类型不是指针或引用,可以随意赋值的,不管接受变量是否有const编译都不会报错的。但如果返回值是指针或者引用,则只能赋值给const类型的接收变量,否则编译会报错
3.修饰函数的形参
函数Func内部就不能通过传进来的指针和引用,修改对应内存的值了,同时也解决了需要构造临时对象的问题