c++新特性-收缩转换,二进制,constexpr,以及namespace&&inline

c++新特性-收缩转换,二进制,constexpr,以及namespace&&inline,第1张

概述char(112312312);//不会检查是否超过范围,会截断 char{12345435345};//会报异常,异常如下: error C2397: 从“__int64”转换到“char”需要收缩转换  warning C4305: “初始化”: 从“__int64”到“char”截断 warning C4309: “初始化”: 截断常量值   c++14二进制支持(0b) 即int a=0b

char(112312312);//不会检查是否超过范围,会截断

char{12345435345};//会报异常,异常如下:

error C2397: 从“__int64”转换到“char”需要收缩转换
 warning C4305: “初始化”: 从“__int64”到“char”截断
warning C4309: “初始化”: 截断常量值

 

c++14二进制支持(0b) 即int a=0b1001;//9,0B1101(13)

constexpr标志返回值或其他表达式是常量,用于返回常量可以用于需要常量表达式的等数组中

constexpr int get()

{

  return 100;

}

int a[10+get()];//可以

inline 在命名空间新特性:namespace&& inline

#include <algorithm>#include <iostream>#include <functional>#include <vector>#include <numeric>#include <array>#include <cstring>#include <cstdio>using namespace  std;namespace all{    namespace V2017    {        voID fun(int num){ cout << "int V2017" << endl; }    }}namespace all {    //展开在all,默认调用    inline namespace V2018    {        voID fun(int num){ cout << "int V2018" << endl; }        voID fun(double num){ cout << "double V2018" << endl; }    }}int main(){    all::V2017::fun(12);//明确调用    all::V2018::fun(16);    all:fun(1);//默认调用    system("pause");}
总结

以上是内存溢出为你收集整理的c++新特性-收缩转换,二进制,constexpr,以及namespace&&inline全部内容,希望文章能够帮你解决c++新特性-收缩转换,二进制,constexpr,以及namespace&&inline所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

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

原文地址: http://outofmemory.cn/langs/1222894.html

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

发表评论

登录后才能评论

评论列表(0条)

保存