问题标签 [member-initialization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1746 浏览

c++ - 在成员初始化列表中使用 std::function

我有一个类型定义:

和一个类型:

然后我有一个成员变量:

然后我在成员初始化器列表中设置:

然后我在构造函数中使用它:

这一切都很好。不幸的是,它对于指向不同类的函数指针是不可扩展的,因为getDataFunction_t它绑定到了iMyDataClass1

我尝试使用模板,但遇到了我无法解决的问题。现在我正在尝试使用std::function,这意味着我将原始 typedef 更改为(我认为):

在这种情况下设置我的初始化列表的正确方法是什么?我在这里用std::bind吗?

更新:这是我对新初始化列表的尝试。我不知道这是否正确,但这是我在发布这个问题之前所拥有的:

0 投票
4 回答
578 浏览

c++ - 数组成员可以自引用初始化吗?

考虑以下代码,其中我们D根据 的另一部分来初始化 的一部分D

上述程序是否定义明确?我们可以安全地使用同一个数组的一部分来初始化它的另一部分吗?

0 投票
1 回答
613 浏览

c++ - 具有 std::istream 引用初始化的类

我在初始化此类时遇到问题:

像这样尝试:

谁能指出我如何做到这一点的正确方向?另外,初始化后,我可以通过说类似的话来更改引用吗

提前致谢

0 投票
2 回答
67 浏览

c++ - 构造函数中成员初始化器列表的用途是什么?

我试图理解运算符重载的概念,但无法理解该程序中成员初始化器列表的使用。它们的真正用途是什么,没有它们我可以重写这个程序吗?

0 投票
3 回答
117 浏览

c++ - 如何使用来自另一个结构的对象编写成员初始化列表

如果我有一个二叉搜索树头文件BST.h并且在其中我有:

然后我有一个AVL.h头文件,我想bstNode在我的文件中使用这个结构,AVL.h如下所示:

我的问题是如何avlNode使用初始化列表语法初始化构造函数?我不确定如何访问bstN.

我可以用结构外的传统定义来做到这一点:

bstN但是当涉及到使用来自另一个类/结构的对象()时,我想学习成员初始化列表的语法。

0 投票
3 回答
1091 浏览

c++ - 将对象重置为初始状态的模式

假设我有一个对象,其成员的构造成本很高,并且需要一个reset()将其重置为其初始状态的函数:

是否有更好的方法/模式可以有效地将对象重置为其初始状态,而无需复制初始化程序列表和reset函数中的初始化逻辑?

编辑:如果没有实现我想要的通用方法,那也是这个问题的可接受结果!

0 投票
2 回答
2847 浏览

c++ - 尝试在类成员初始化中使用向量的填充构造函数失败。怎么了?

当使用带有 C++11 的类成员初始化功能的 std::vector 的填充构造函数(任一形式)时,以下代码无法编译(在 clang/llvm 3.6 下):

我已经搜索了有关矢量填充构造函数和类成员初始化的问题,但结果都是空的。知道我错过了什么吗?

0 投票
1 回答
25 浏览

c++ - 努力理解“成员初始化”

我一直在使用 C++。我正在努力了解成员初始化,尤其是一行代码。考虑以下程序;

我已将我遇到问题的代码行加粗('public' 中的第一个声明我的问题是,当我不必将红色绿色或蓝色声明为 0 时,为什么我必须将 alpha 声明为 255,而我有在私有部分中声明它们。

有人可以向我解释一下,甚至更好地解释这个成员初始化的概念。谢谢,非常感谢您的帮助。

0 投票
3 回答
435 浏览

c++ - 成员初始化列表是否复制字符串C++

如果我在其中包含的类的构造函数中使用成员初始化列表,char*它是将值复制到新分配的内存还是只是将指针指向相同的值?

前任。

这会很好还是我应该逐个运行单元格来复制信息?

编辑:只是为了澄清我改变了一行的问题。

0 投票
2 回答
58 浏览

swift - 在什么情况下结构中的存储属性没有默认值?

我是 Swift 新手,正在尝试学习 Memberwise Initialisers 的概念。下面的语句来自“The Swift Programming Language 2.1”。

我的问题是,在什么样的情况下,结构中的存储属性不会有默认值?一个带有解释的例子将不胜感激。

结构类型的成员初始化器

如果结构类型没有定义任何自己的自定义初始值设定项,则结构类型会自动接收成员初始值设定项。与默认初始值设定项不同,结构接收成员初始值设定项,即使它存储了没有默认值的属性。