问题标签 [instantiation]

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 投票
10 回答
90761 浏览

c++ - 有没有办法从保存类名的字符串中实例化对象?

我有一个文件:Base.h

和另一个文件:BaseFactory.h

有没有办法以某种方式将此字符串转换为实际类型(类),这样 BaseFactory 就不必知道所有可能的派生类,并且每个都有 if() ?我可以从这个字符串生成一个类吗?

我认为这可以通过反射在 C# 中完成。C ++中有类似的东西吗?

0 投票
4 回答
2140 浏览

c++ - 自动将类定义与声明分开?

我正在使用一个几乎完全由头文件中的模板类和函数组成的库,如下所示:

现在这很糟糕,因为每当我包含其中一个头文件(实际上我在每个编译单元中都包含其中的许多头文件)时,编译时间都是难以忍受的。

因为作为模板参数我只使用一种或两种类型,所以我打算为每个库头文件创建一个只包含声明的文件,没有繁重的代码,如下所示:

然后是一个文件,它创建了我需要的所有实例化。该文件可以一劳永逸地单独编译

现在我可以只包含fwd-foo.h在我的代码中并且编译时间很短。我会foo.o在最后链接反对。

fwd-foo.h当然,缺点是我必须自己创建这些新foo.cpp文件。当然,这是一个维护问题:当一个新的库版本发布时,我必须让它们适应那个新版本。还有其他缺点吗?

我的主要问题是:

我有没有机会创建这些新文件,尤其是从原始文件fwd-foo.h自动foo.h创建?我必须对许多库头文件(可能 20 个左右)执行此操作,并且最好使用自动解决方案,尤其是在发布新库版本并且我必须使用新版本再次执行此操作的情况下。是否有任何工具可用于此任务?

编辑:

附加问题:在这种情况下,新支持的extern关键字如何帮助我?

0 投票
8 回答
45202 浏览

python - dict() 和 {} 有什么区别?

假设我想做一本字典。我们会调用它d。但是有多种方法可以在 Python 中初始化字典!例如,我可以这样做:

或者我可以这样做:

或者这个,奇怪的是:

或这个:

以及具有该dict()功能的其他多种方式。所以很明显,其中一件事dict()是语法和初始化的灵活性。但这不是我要问的。

假设我d只做一本空字典。d = {}当我做vs时,Python 解释器的幕后发生了什么d = dict()?只是做同一件事的两种方法吗?using 是否{}额外的调用dict()?一个有(甚至可以忽略不计)比另一个更多的开销?虽然这个问题真的完全不重要,但我很想回答这个问题。

0 投票
1 回答
585 浏览

javascript - 实例化 JavaScript 日期对象的语法

在 JavaScript 中,您似乎可以编写以下代码:

...或者:

第一个是合乎逻辑的,但第二个对我来说似乎有点不寻常......这两种创建 Date 对象的方式有什么区别,第二个的目的是什么?

谢谢,

史蒂夫

0 投票
10 回答
56009 浏览

c# - 如何重新初始化或重置类的属性?

我创建了一个具有默认值属性的类。在对象生命周期的某个时刻,我想将对象的属性“重置”回实例化对象时的状态。例如,假设这是一个类:

然后在某个时刻,在NameTires属性被更改后,ResetTruck()可以调用该方法,并将属性分别重置回“超级卡车”和 4。

将属性重置为其初始硬编码默认值的最佳方法是什么?

0 投票
4 回答
29996 浏览

c# - 如何在 C# 中使用私有构造函数实例化对象?

我绝对记得在某处看到一个使用反射或其他东西的例子。这是与用户无法创建的事情有关SqlParameterCollection(如果我没记错的话)。可惜再也找不到了。

有人可以在这里分享这个技巧吗?并不是说我认为它是一种有效的开发方法,我只是对这样做的可能性非常感兴趣。

0 投票
4 回答
932 浏览

java - 如何实例化具有需要接口对象的构造函数的类

我正在尝试使用 Interactive Brokers Java API 来查看是否可以进行一些算法交易(最初是在纸上)。我想调用一个名为的方法ReqMktDepth(),该方法位于一个名为EClientSocket.

EClientSocket构造函数需要AnyWrapper传递一个类型的对象,并且是AnyWrapper一个接口而不是一个具体的类。从理论上讲,我该如何将一个AnyWrapper类传递给EClientSocket构造函数。

0 投票
10 回答
55423 浏览

c++ - 在 C++ 中初始化对象之前声明一个对象

是否可以在不实例化的情况下在 C++ 中声明一个变量?我想做这样的事情:

基本上,我只想在条件之外声明 a ,以便获得正确的范围。

有没有办法在不使用指针和a在堆上分配的情况下做到这一点?也许有一些聪明的参考?

0 投票
3 回答
265 浏览

python - Python中关键字参数的初始化

为什么会出现以下情况:

导致:

我不明白为什么在使用可选关键字参数时它不使用列表的新实例,谁能解释一下?

0 投票
10 回答
15239 浏览

c# - 不了解 C# 中的对象实例化

这篇文章谈到了我对 C# 类的理解以及为什么它们比静态函数更可取的一个空白。

我正在尝试获取对象列表。列表中的每个对象代表表中的一条记录。这在静态函数中很容易做到。

使用一个类,我已经能够做到以下几点:

调用例程:

课程:

我不能重写这个类,这样就可以用一行来完成:

在我看来,上面的 ListofBusinesses 类只不过是一个封装在一个没有属性的类中的静态函数,只是为了拥有一个类而存在。

我试过了:

但收到编译器错误“成员名称不能与封闭类型相同”。例如,我尝试使用构造函数,但缺少一些东西。

任何帮助都会在我误解了一段时间的领域启发我。

迈克·托马斯