constructor相关内容

在实例构造函数之后调用静态构造函数?

亲爱的,像这样的问题一直已经问过,但在答案中没有我看到的问题的解释. 问题:C# 编程指南 说: 静态构造函数用于初始化任何静态数据,或执行只需要执行一次的特定操作.它在创建第一个实例或引用任何静态成员之前自动调用. 特别是,在创建类的任何实例之前调用静态构造函数.(这并不能确保静态构造函数在创建实例之前完成,但这是另一回事.) 让我们考虑示例代码: 使用系统;公开课测试 ..
发布时间:2022-01-05 20:30:38 C#/.NET

t4mvc:无法继承没有默认构造函数的控制器类?

我在 MVC2 中使用 T4MVC. 我有以下构建块: 一个简单的实体接口,它定义了每个 POCO 实体必须有一个 long Id 属性: 公共接口IEntity{公共长 ID;} 一个简单的 POCO 类,它实现了 IEntity 接口并具有一些字符串属性: 公共类 CD : IEntity{公共长 ID { 获取;放;}公共长名称{获取;放;}} 基本控制器: 公共抽象类 ..
发布时间:2022-01-05 17:06:33 其他开发

我应该使用 new Type() 还是只使用 Type() 来调用构造函数

两种语法是等价的(至少我认为它们是). let o1 = new Object() 或 let o2 = Object() 您更经常使用哪种方式?可读性问题呢? 解决方案 它们是一样的. 我更喜欢使用“new",除了我在其他语言中习惯的使用之外,没有什么好的理由,并且它可以更容易地为构造函数调用 findstr/grep(缺乏智能工具来“查找所有引用"一个解决方案). ..
发布时间:2022-01-05 10:26:40 其他开发

将 F# 管道符号与对象构造函数一起使用

我正在尝试找出使用管道运算符 |> 来创建对象的正确语法.目前我正在使用静态成员来创建对象,然后直接通过管道传输到该对象.这是简化版. type Shape =价值点:向量[]新(点)={ 点数 = 点数;}静态成员创建(点)=形状(点)静态成员连接(形状:形状列表)=形状|>List.map(有趣的形状 -> shape.points)|>数组连接|>形状创建 我想做什么... 静态成员 ..
发布时间:2022-01-05 10:01:17 其他开发

从构造函数捕获异常意味着我的实例之后超出范围

我有一个类,它的构造函数可能会抛出异常.下面是一些可以捕获异常的代码: 尝试{MyClass 实例(3, 4, 5);}捕获(MyClassException& ex){cerr 毕竟只有在try块内,instance才被成功创建,可以使用. 我确实想知道您的 catch 块是否真的在处理异常.如果你不能做任何事情来解决这种情况,你应该让它传播. ..
发布时间:2022-01-04 11:50:34 C/C++开发

C#单向链表实现

在尝试了解如何在 C# 中实现单个列表时,我发现了以下链接: 创建一个非常简单的链表. 但是,由于我是 C# 新手,我对上面讨论的初始部分中列出的语法感到困惑.正在声明一个名为 Node 的类,并且在声明为“public Node next"的类中还有另一条语句.这个语句叫做构造函数吗?请帮忙. 公共类节点{接下来是公共节点;公共对象数据;} 解决方案 在一个简单的单向链表实现中 ..
发布时间:2022-01-01 18:39:44 C#/.NET

Visual C++:没有默认构造函数

我已经看过其他几个问这个问题的问题,但我的案例似乎比我经历过的要简单得多,所以我会问我的案例. Learn.h: #ifndef LEARN_H#define LEARN_H课堂学习{上市:学习(int x);〜学习();私人的:const 最喜欢的;};#万一 Learn.cpp: #include "Learn.h"#include 使用命名空间标准;学习::学习(int x=0) ..
发布时间:2021-12-31 22:35:56 C/C++开发

Java“类中的构造函数不能应用于给定类型"“必需:找不到参数:字符串"

我正在处理一项作业,我必须从头开始创建一个链表,并且在编译时遇到一个错误:“Node 类中的构造函数 Node 无法应用于给定类型;" 这就是我正在尝试的,错误说: 必需:无参数找到:字符串 但是我看不出哪里出错了,因为我的 Node 构造函数需要一个字符串? 公共类节点{字符串数据;下一个节点;公共无效节点(字符串 x){数据 = x;下一个 = 空;}}公共类字符串列表{私 ..
发布时间:2021-12-31 22:35:49 Java开发

构造函数以抛出异常结束?是否存在内存泄漏?

我正在阅读这篇它指出 注意:如果构造函数以抛出异常结束,内存与对象本身相关联的被清理——没有内存泄漏.例如: void f(){××;//如果 X::X() 抛出,则 x 本身的内存不会泄漏Y* p = 新 Y();//如果 Y::Y() 抛出,*p 本身的内存不会泄漏} 我很难理解这一点,如果有人能澄清这一点,我将不胜感激.我尝试了以下示例,该示例表明构造函数中发生异常时不会调用析构函 ..
发布时间:2021-12-31 08:14:59 C/C++开发

类构造函数中声明的变量的范围是什么?

我很好奇,在类构造函数中声明的不是该类的数据成员的变量的范围是什么? 例如,如果一个构造函数需要一个迭代 int i,这个变量会在构造函数完成后被销毁,还是对程序来说是全局的? 解决方案 在这个意义上,构造函数就像任何其他函数一样 - 在内部声明的任何变量都有通常的作用域限制,一旦构造函数被破坏,它们肯定会超出作用域并被销毁完成. ..
发布时间:2021-12-30 15:44:57 C/C++开发

JavaScript 中原型继承的约定

我看到很多这样的代码: function Base() {}函数子(){}Sub.prototype = new Base(); 但是,如果您这样做: s = new Sub();打印(s.constructor == Sub); 这是错误的.这对我来说似乎令人困惑,因为 s 的构造函数确实是 Sub.这样做是否传统/更好? function Base() {}函数子(){}Sub.pr ..
发布时间:2021-12-30 15:44:42 前端开发

链接器错误 LNK2001

当我尝试创建一个对象时,我在 Visual Studio 中收到 LNK2001 错误,我认为这是构造函数的问题,因为更改构造函数会更改错误. 客户 bob("Bob", "25 Bob Lane", "01bob82", "M", "bob/bob/bob"); 这一行给出了这个错误: Error 1 error LNK2001: unresolved external symbol "p ..
发布时间:2021-12-30 15:44:33 C/C++开发

在 C# 构造函数中使用 this()

我一直试图弄清楚这些构造函数之间是否存在任何差异.假设有一个不带参数的 Foo() 构造函数,所有这些构造函数都会有相同的结果吗? 示例 1 public Foo(): 这(){等等;等等;等等;} 示例 2 public Foo(){这();等等;等等;等等;} 示例 3 public Foo(){这 = 新 Foo();等等;等等;等等;} 解决方案 示例 1 是有效的(假 ..
发布时间:2021-12-30 15:44:21 C#/.NET

在 C++ 中,只有默认参数的构造函数是默认构造函数吗?

在以下代码中: struct Foo{Foo(int x=0);}; 构造函数算作默认构造函数吗? 解决方案 C++98 §12.1/5 (强调我的): 类 X 的默认构造函数是无需参数即可调用的 X 构造函数.如果类 X 没有用户声明的构造函数,则隐式声明默认构造函数. 所以是的,它确实算作默认构造函数.另见. ..
发布时间:2021-12-30 15:44:06 C/C++开发