C++中那些不常用的关键字

本文介绍了C++中一些不常使用的关键字,包括explicit用于防止隐式类型转换,export在旧标准中用于模板但已被弃用,goto语句应避免使用以保持代码清晰,mutable允许在const成员函数中修改数据成员,以及volatile确保变量值的每次读取都来自内存,尤其在并行编程中发挥作用。
摘要由CSDN通过智能技术生成

        C++有很多关键字,比如if、else、for、continue、break这类常用关键字。还有一些使用不是很频繁的关键字,容易被忘记,这里总结一下,对于笔试面试也许会有帮助。

1、explicit

        这个关键字对于好的代码是必要的。

        使用explicit关键字,将构造函数声明为显式构造函数,以防止隐式的类型转换

       

class Test
{
public:
    explicit Test(const std::string& s){}
    Test operator+(Test&){}
};

        接受一个实参的构造函数,实际上定义了转换为此类类型的隐式转换机制,可称为转换构造函数。(见C++ Primer 5)。在上述代码中,将string 类型的对象转换为Test类对象。即,在需要使用Test的地方,可以使用string来代替,这种转换是由编译器自动执行的。

Test a;
string st
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值