首页 > 编程语言 > 详细

C++ Tips

时间:2018-12-01 16:18:35      阅读:136      评论:0      收藏:0      [点我收藏+]

{} 与 ()初始化变量

下面两种方式都把foobar初始化了10和100

    //圆括号初始化
    int foo(10);
    int bar(100);

    //花括号初始化
    int foo{10};
    int bar{100};
    

他们的区别在于花括号是C++11新引入的初始化方式,成为列表初始化 (list initialization),他们有一个区别:

    long double ID = 3.1415926;
    int foo{ID};//会报错,long double -> int会导致信息丢失
    int bar(ID);//虽然也会导致信息丢失,但圆括号允许这样的转换

所以用花括号来说比较有限制性,很安全。

C++ Tips

原文:https://www.cnblogs.com/bobliao/p/10049762.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!