initialization-list相关内容

为什么 Java 没有像 C++ 中那样的初始化列表?

在 C++ 中,您可以使用初始化列表在构造函数开始运行之前初始化类的字段.例如: Foo::Foo(string s, double d, int n) : name(s), weight(d), age(n) {//空的;已经处理了!} 我很好奇为什么 Java 没有类似的功能.根据Core Java:第 1 卷: C++ 使用这种特殊的语法来调用字段构造函数.在 Java 中,不需要 ..
发布时间:2022-01-19 00:10:28 Java开发

C++:继承字段的初始化

我有一个关于在派生类的构造函数中初始化继承成员的问题.示例代码: A 类{上市:诠释m_int;};B类:公共A{上市:B():m_int(0){}}; 这段代码给了我以下输出: 在构造函数'B::B()'中:第 10 行:错误:“B"类没有任何名为“m_int"的字段 (参见 http://codepad.org/tn1weFFP) 我猜为什么会这样?m_int应该是B的成 ..
发布时间:2022-01-18 23:30:16 C/C++开发

在这种特定情况下,使用成员初始值设定项列表和在构造函数中赋值有区别吗?

在内部和关于生成的代码,有没有真正的区别: MyClass::MyClass(): _capacity(15), _data(NULL), _len(0){} 和 MyClass::MyClass(){_容量=15;_data=NULL;_len=0} 谢谢... 解决方案 假设这些值是原始类型,那么不,没有区别.初始化列表仅在您将对象作为成员时才会产生影响,因为初始化列表允许您将 ..
发布时间:2022-01-18 23:08:59 C/C++开发

如何初始化本身具有非平凡构造函数的对象的 stl 向量?

假设我有以下课程: class MyInteger {私人的:国际n_;上市:MyInteger(int n) : n_(n) {};//更多东西}; 假设这个类没有默认的普通构造函数MyInteger().由于某种原因,我必须始终提供一个 int 来初始化它.然后假设在我的代码中的某个地方我需要一个 vector.如何初始化此 vector 中的每个 MyInteger 组件? 我有两 ..
发布时间:2021-12-30 15:37:14 C/C++开发

使用初始化列表(C++)初始化父级的受保护成员

是否可以使用子类的构造函数的初始化列表来初始化在父类中声明为受保护的数据成员?我无法让它工作.我可以解决它,但如果我不必这样做就好了. 一些示例代码: class 父级{受保护:std::string 东西;};子类:公共父类{私人的:Child() : something("Hello, World!"){}}; 当我尝试这个时,编译器告诉我:“类‘Child’没有任何名为‘somet ..
发布时间:2021-12-17 19:07:16 C/C++开发

在这种特定情况下,使用成员初始值设定项列表和在构造函数中赋值之间有区别吗?

内部和关于生成的代码,是否真的有区别: MyClass::MyClass(): _capacity(15), _data(NULL), _len(0){} 和 MyClass::MyClass(){_容量=15;_数据=空;_len=0} 谢谢... 解决方案 假设这些值是原始类型,那么不,没有区别.初始化列表仅在您将对象作为成员时才起作用,因为初始化列表让您将对象初始化为其最终值 ..
发布时间:2021-12-01 15:47:52 C/C++开发

“中产阶级"指的是“中产阶级".在使用非默认虚拟基础构造函数的Diamond继承图中:为什么它不是编译错误?

考虑菱形继承图(即虚拟基类).我们从上一个知道 的主体是被执行的. 那是为什么?我本以为应该是编译错误.(当然,当声明了最派生的类并创建了菱形时,就将其检测出来.) 我正在寻找两件事: 此标准在哪里指定? 这种显式但尚未被忽略的代码会在语言的其他地方发生吗? 我正在谈论的代码示例遵循其实际和预期的输出,如下所示: B 0arg-ctorMf 0arg-ctorMt 0 ..

多个变量的C ++初始化列表

我正在尝试学习如何初始化列表。 我下面有一个简单的类,试图初始化变量列表。第一个 Month(int m):month(m)有效。我正在尝试使用多个变量在该行下执行类似的操作。是否可以这种格式?我会不得不摆脱那种班轮吗? class Month { public: Month(int m):month(m){} //此方法有效 Month(字符第一,字符第二,字符第三):第 ..
发布时间:2020-10-02 00:41:54 C/C++开发

自动初始化实例变量?

我有一个看起来像这样的python类: class过程: def __init __(self,PID ,PPID,cmd,FD,可访问的用户): 后跟: self.PID = PID self.PPID = PPID self.cmd = cmd ... 有没有办法自动初始化这些实例变量,例如C ++的初始化列表? 解决方 ..
发布时间:2020-10-01 23:07:45 Python

初始化列表中的零初始化数组成员

我有一个带有数组成员的类,我想将其初始化为全零。 class X { private: int m_array [10]; }; 对于局部变量,有一种直接初始化为零的简单方法(请参见此处): int myArray [10] = {}; 此外,类成员 m_array 显然需要进行初始化,因为默认初始化int只会留下随机垃圾,如此处所述 ..

Valgrind错误:退出时正在使用:72,704字节C ++带有char *的初始化列表怪异

问题: 我遇到了一个我没想到的怪异问题。我有一个叫做Answers 的类,并且标题内是这样的: class Answer { char * aText; bool b_correct; public: Answer():aText(0){;} //默认构造函数 } 主要(测试)驱动程序代码如下: int main(void) { 静 ..
发布时间:2020-09-27 01:19:21 C/C++开发

如何初始化一个stl向量的对象,他们自己有非平凡的构造函数?

假设我有下面的类: class MyInteger { private: int n_; public: MyInteger(int n):n_(n){}; // MORE STUFF };假设这个类没有默认的琐碎的构造函数 MyInteger(); 。我必须总是提供 int 来初始化它由于某种原因。然后假设我的代码中的某处需要一个向量 ..
发布时间:2016-12-30 13:59:53 C/C++开发

C ++类初始化列表示例

示例: $ b。我将在新的Stroustrup书中阅读第17章,我对初始化一个初始化列表的类型感到困惑。 $ b in .hpp: class A { public: A():_plantName(std :: string s),_growTimeMinutes(int 1); virtual〜A(); private: std :: string _plan ..
发布时间:2016-11-23 18:07:16 C/C++开发

Python:自动初始化实例变量?

我有一个类似这样的python类: 类进程: def __init __ ,PPID,cmd,FDs,reachable,user): 后跟: self.PID = PID self.PPID = PPID self.cmd = cmd ... 有没有办法自动初始化这些实例变量,如C ++的初始化列表? 编辑:扩展解决方案 ..
发布时间:2016-11-23 11:05:27 Python