const
程序员文章站
2022-03-16 08:57:01
...
C 修饰常变量 编译阶段 常变量有没有做左值
C++ 修饰常量 编译阶段 使用到常量的地方把常量替换成常量初始化的值
const 指针 引用的结合
常引用可以引用立即数
立即数放到临时量中
常引用来引用临时量
形参加上const的作用
1.防止实参被修改
2.引用立即数
const &做形参
1.避免实参被修改
2.接收不能取地址的数据
引用做形参 普通变量做形参
1.引用修改实参的值
2.引用不能引用立即数,部分实参无法调用
不能返回局部变量的地址或引用
类中的const
1.修饰的成员变量 ==》 一定要在构造函数的初始化列表中做初始化
Test(int a, int b) :mb(b)
{
ma = a;
}
2.修饰的对象 常对象
常对象只能调用常方法
常对象不能调用普通方法
pubic:
void Show()const//Test* const ==> const Test* const
{
std::cout << ma << std::endl;
std::cout << mb << std::endl;
this->Print();
}
int main()
{
const Test test1(30, 40);
test1.Show();// const Test*
return 0;
}
常方法
普通对象和常对象都可以调用
普通方法能调用常方法
常方法来调用普通方法
void Print()//Test* const this
{
}
class Test
{
public:
Test(int a, int b) :mb(b)
{
ma = a;
}
void Show()const//Test* const ==> const Test* const
{
std::cout << ma << std::endl;
std::cout << mb << std::endl;
this->Print();
}
void Print()//Test* const this
{
}
private:
int ma;
int mb;
};
int main()
{
Test test(10,20);
test.Show();//异义
const Test test1(30, 40);
test1.Show();// const Test*
return 0;
}
上一篇: Windows为什么会出现端口占用?如何处理端口异常占用?
下一篇: 如何在css中让文本居中显示