加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 明确N-ary构造函数?

发布时间:2020-12-16 05:55:43 所属栏目:百科 来源:网络整理
导读:在本演讲中: http://qtconference.kdab.com/sites/default/files/slides/mutz-dd-speed-up-your-qt-5-programs-using-c++11.pdf 作者建议N-ary构造函数受益于C 11版本的明确关键字. 如果您有多个构造函数参数,C 11中会发生哪些更改? 解决方法 在C 11中,如
在本演讲中: http://qtconference.kdab.com/sites/default/files/slides/mutz-dd-speed-up-your-qt-5-programs-using-c++11.pdf

作者建议N-ary构造函数受益于C 11版本的明确关键字.

如果您有多个构造函数参数,C 11中会发生哪些更改?

解决方法

在C 11中,如果您有一个具有多个参数的类A的非显式构造函数(这里我使用A :: A(std :: string,int,std :: string)作为示例),您可以初始化该类型的参数与括号初始化:
void foo(A a);
foo({"the",3,"parameters"});

类似地,您可以使用返回值执行相同操作:

A bar() {
  return {"the","parameters"};
}

但是,如果构造函数是显式的,那么这些将不会被编译.因此,显式关键字现在对于所有的构造函数都是重要的,而不仅仅是转换构造函数.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读