dog*_*719 4 c++ initialization class
来自Java和C#世界,我总是喜欢使用
someclass a = someclass();
Run Code Online (Sandbox Code Playgroud)
代替
someclass a();
Run Code Online (Sandbox Code Playgroud)
在C++中初始化一个类变量.但是,我的编译器有时会抱怨
Error C2280: Attempting to reference a deleted function
Run Code Online (Sandbox Code Playgroud)
它们之间有什么区别吗?哪一个更好?
它们之间有什么区别吗?
一个大问题:someclass a();宣布一个功能!
并且someclass a = someclass();,在C++ 17的复制椭圆之前,要求类是可移动的,这可能不是这里的情况,因为你得到了错误Attempting to reference a deleted function.
哪一个更好?
没有.改为使用:
someclass a;
Run Code Online (Sandbox Code Playgroud)
要么
someclass a{}; // C++11
Run Code Online (Sandbox Code Playgroud)
两者都将调用默认构造函数.
| 归档时间: |
|
| 查看次数: |
196 次 |
| 最近记录: |