const关键字的几种常用用法

来源:互联网 发布:perl 数组查找字符串 编辑:程序博客网 时间:2024/05/20 07:51

在C++中,const关键字有着举足轻重的位置。善用const可以为我们在编程过程中减少不必要的麻烦。

/*const是一个常量关键字,主要是为了防止所修饰对象被修改。我们在定义一个变量时,如果想要防止这个变量被修改,可以用const来修饰这个变量。也就是说,被const修饰过的变量或者函数,不能对其进行修改,否则,编译器就会报错*//*用与修饰全局变量*/#define PI1 3.14const double PI2 = 3.14;/*两种方式都可以用来定义全局变量。不过,第二种要比第一种方式要好,使用宏定义的变量,其信息一般以表格的形式储存在系统中,当我们在调试程序时,就有可能使得这个宏定义的变量反复出现在符号表中。而const修饰的变量会一直出现在符号表,使得我们调试方便许多。*//*用于修饰指针*/const int *p1 = 100;   //常量整形指针int *const p2 = 200;   //整形常量指针/*常量整形指针,不能通过这个指针修改它所指向的变量,指针本身是可变的。整形变量指针,指针不可修改,但是指向的变量可以修改*//*用于表示函数的输入,输出*/char *strcpy(char *buf,const char *str)   //将str拷贝给buf/*由于buf是需要修改的,所以不用const修饰,而str是传递数据进来的,并不希望进行改变,所以可以用const修饰*//*修饰类成员函数*/class student {public:student(int age) :_age(age) {}void getAge()const {      //不希望通过函数来改变类的私有变量_age = 100;       //错误,编译器会报警cout << _age << endl;}private:int _age;};/*如果我们在定义一个类的成员函数时,并不希望这个函数能够改变类的私有变量,这时我们可以使用const将这个成员函数定义为常量函数,这样,这个函数就不能修改私有变量了。*/


0 0
原创粉丝点击