问题标签 [default-constructor]

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 回答
10564 浏览

c++ - Google Mock:“没有合适的默认构造函数可用”?

将 Visual Studio 2010 C++ 与 googlemock 一起使用。我正在尝试使用我创建的模拟,但出现编译器错误:

错误是:

员工假:

员工:

我认为问题是基类没有默认构造函数,但我应该如何解决这个问题?我需要向我的基类添加默认构造函数吗?或者我需要在我的模拟类中添加一个构造函数吗?或者是其他东西?

0 投票
3 回答
4443 浏览

c++ - 默认构造函数为空时会做什么?

我想知道是否有人可以解释分配内存后默认 ctor 的作用,它如何初始化分配的内存?

0 投票
1 回答
9290 浏览

c++ - “显式”关键字对默认构造函数有任何影响吗?

是否有理由将explicit关键字用于不带任何参数的构造函数?它有什么作用吗?我想知道,因为我刚越过这条线

在文档页面的末尾附近boost::char_separator,但那里没有进一步解释。

0 投票
2 回答
1475 浏览

c++ - 使用类定义之外的默认参数定义的默认构造函数,为什么会这样?涉及的模板会发生什么?

我知道这是一种不好的形式,应该在声明中指定默认值,但是如果您愿意,请放纵我一会儿.. 为什么会编译?到底发生了什么?

输出: 666

.. 模板如何影响同一段代码?

错误:没有合适的默认构造函数可用

感谢您的时间!

0 投票
4 回答
6386 浏览

c# - 如何使用反射获取 ValueType 类型的默认值

如果我有一个值类型的泛型类型参数并且我想知道一个值是否等于默认值,我会像这样测试它:

如果我没有泛型类型参数,那么似乎我将不得不使用反射。如果该方法必须适用于所有值类型,那么有没有比我在这里做的更好的方法来执行这个测试?:

附带说明一下,关于评估 Nullable 结构,我在这里没有考虑什么?

0 投票
1 回答
1934 浏览

c++ - C++03中默认初始化和值初始化的区别?

我一直认为创建一个新对象总是会调用一个对象上的默认构造函数,而构造函数是显式的还是编译器自动生成的并没有区别。根据这个备受推崇的对不同问题的回答,这在 C++98 和 C++03 之间发生了微妙的变化,现在的工作方式如下:

谁能告诉我:

  1. 为什么要更改标准,即这有什么好处,或者现在有什么以前没有的可能;
  2. “默认初始化”和“值初始化”这两个术语究竟代表什么?
  3. 标准的相关部分是什么?
0 投票
9 回答
37258 浏览

c++ - 在哪些情况下根本没有构造函数,甚至是默认构造函数?

在我目前正在阅读的这本书中,我遇到了这个问题:

类不需要构造函数。如果对象不需要初始化,则不需要默认构造函数。

从上面推断编译器在某些情况下不会为类/结构生成默认构造函数,我是否正确?如果是,这些情况是什么?我会冒险说 POD 可能就是其中之一。还有其他的吗?

编辑:我更改了标题,因为原始标题的含义是我问什么时候没有定义默认构造函数,而不是问一个类什么时候根本没有构造函数。

0 投票
5 回答
1170 浏览

c++ - C++ 中的默认构造函数

我只是对这个问题感到好奇,但在互联网上找不到答案。

假设我们有简单的标题:

我们知道,这个类的默认构造函数是自动生成的。

现在我还有 2 个文件:

First.obj 和 Second.obj 是否都包含该类的代码

0 投票
2 回答
1267 浏览

c++ - 默认的默认构造函数?在 n3290 草案中

n3290 草案§12.1(构造函数)¶5中的一点:

隐式声明的默认构造函数是inline public其类的成员。类的默认默认构造函数X在以下情况下定义为已删除:

  • X是一个类似联合的类,它有一个带有非平凡默认构造函数的变体成员,
  • 任何没有大括号或等号初始化器的非静态数据成员都是引用类型,
  • 任何没有大括号或相等初始化器的 const 限定类型(或其数组)的非变体非静态数据成员都没有用户提供的默认构造函数,
  • X是一个联合,它的所有变体成员都是 const 限定类型(或其数组),
  • X是一个非联合类,并且任何匿名联合成员的所有成员都是 const 限定类型(或其数组),
  • 任何直接或虚拟基类,或没有大括号或相等初始化器的非静态数据成员,具有类类型M(或其数组),并且 M没有应用于M的默认构造函数的默认构造函数或重载决议(13.3)导致歧义或导致从默认的默认构造函数中删除或无法访问的函数,或
  • 任何直接或虚拟基类或非静态数据成员都具有带有
    析构函数的类型,该析构函数已从默认的默认构造函数中删除或不可访问

请用一些示例程序解释默认的默认构造函数。

0 投票
4 回答
50450 浏览

java - Spring 是否要求所有 bean 都具有默认构造函数?

我不想为我的auditRecord类创建默认构造函数。

但Spring似乎坚持它:

这真的有必要吗?