免费设计网站平台,网站怎么做才能赚钱吗,seo最好的网站源码,广东东莞免费网站制作公司在C中#xff0c;const 是一个关键字#xff0c;用于声明常量。它可以用于多种情况#xff0c;包括声明常量变量、常量指针、以及成员函数中的常量性。 1.常量变量
通过在变量声明前加上 const 关键字#xff0c;可以创建一个不可修改的常量。
例如#xff1a;
const i…在C中const 是一个关键字用于声明常量。它可以用于多种情况包括声明常量变量、常量指针、以及成员函数中的常量性。 1.常量变量
通过在变量声明前加上 const 关键字可以创建一个不可修改的常量。
例如
const int x 10;2.常量指针
const 还可以用于声明指向常量的指针这意味着指针所指向的值不能被修改但指针本身可以被修改。例如
int y 5;
const int *ptr y;在这个例子中ptr 是一个指向常量整数的指针因此不能通过 ptr 来修改 y 的值但可以通过其他途径修改 y。 3.常对象 const 1) 常函数中的 this 是被 const 修饰的在常函数中成员变量不能被修改 ; 2) 常函数只能调用常函数 语法在成员函数后面加const关键字 示例 #include iostream
using namespace std;
class Person
{int age;
public:Person(){}Person(int a):age(a){}//常函数:1.不可以改变成员变量的值 2.常函数只能调用常函数void show() const{//age;值不可以修改coutageendl;setAge(25);}void setAge(int a) const{//age a;值不可以修改coutageendl;}
};int main(int argc, const char *argv[])
{Person p(1);p.show();return 0;
} 4.常对象 语法1.const 类名 对象名 ( 实参 ) 2.类名 const 对象名 ( 实参 ) 注意常对象 (1) 成员变量必须有初值 (2) 只能调用常成员函数 功能希望对象所有成员的值不被修改 示例 #include iostream
using namespace std;
class Person
{int age;
public:Person(){}Person(int a):age(a){}/*void show() const //常函数:1.不可以改变成员变量的值{coutconst.....ageendl;}*/void show()//自由的函数{coutshow...ageendl;}
};int main(int argc, const char *argv[])
{Person p(1);//1.自由的对象首选调用自由的函数没有自由的函数可以调用常函数p.show();const Person p1(10);//2.常对象:只能调用常函数不能调用自由的函数Person const p2(20);p1.show();return 0;
} 5.对比 * 普通对象 1. 可以调用常函数 * 2. 普通函数和常函数可以构成函数的重载特殊的重载 * 3. 普通函数和常函数同时存在时普通的对象调用自由的函数 * * 常对象 1. 只能调用常函数 , 不能调用自由的函数 * 2. 注意成员变量要有初值 6.mutable 关键字 作用mutable 修饰的成员变量可以在常函数中修改。 示例 #include iostream
using namespace std;
class Person
{
private:string name;int age;mutable int a;
public:Person(int age,string name,int a):age(age),name(name),a(a){}void show(){coutage nameendl;}void show() const{a;coutage$$$name aendl;}
};int main()
{Person p(20, 小明,10);p.show();const Person p2(30, 小强,10);p2.show();
} 以上就是const的基本用法本次代码分享到此结束谢谢大家观看希望大家点点赞点点关注谢谢大家