第二章 语言可用性的强化——控制流

第二章 语言可用性的强化——控制流,第1张

第二章 语言可用性的强化——控制流 2.4 控制流 if constexpr

C++17 将 constexpr 这个关键字引入到 if 语句中,允许代码中声明常量表达式的判断条件,如下代码:

template
auto print_type_info(const T& t)
{
    if constexpr (std::is_integral::value)
    {
        return t + 1;
    }
    else
    {
        return t + 0.001;
    }
}

各个特性并不复杂,只是让代码在编译的时候就可以完成分支判断,会有效率上的提升。

区间 for 迭代

C++ 终于在 C++11 中引入了基于范围迭代的写法,如下代码:

vector vec = { 1, 2, 3, 4 };

for (auto element : vec)
{
    cout << element << endl;  //只读
}

for (auto element : vec)
{
    element += 1;  //读写
}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5692606.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存