问题标签 [constructor-overloading]
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.
c# - 优化 C# 中的构造函数重载
我有一个带有以下构造函数的 Winforms 应用程序:
选哪个?这取决于程序是否由 CMD 启动并添加了参数。这是检查的主要内容:
我的问题是:
如何优化构造函数?它们都包含大约 30 行与相同代码一样好的代码,我想通过这样做来解决这个问题:
但这给了我错误:
不可调用的成员不能像方法一样使用。
我该如何优化呢?
c++ - 转换非空终止向量串起来
我有一个非空终止的字符向量,如何构造一个新字符串并让它自动插入\0
到字符串的末尾?
两者之间的正确构造函数是什么?
scala - 如何重载我的案例类构造函数以允许两种不同的类型?
现在我有一个RealVector
班级和ComplexVector
班级。它们的逻辑几乎相同,所以我想将它们组合成一个Vector
类。RealVector
需要一个List[Double]
而ComplexVector
需要一个List[ComplexNumber]
whereComplexNumber
是我创建的一个案例类。
我如何使它case class Vector
接受这两种List
类型中的任何一种?请注意,虽然大多数方法的代码是相同的,但其中一些可能会返回 aDouble
或ComplexNumber
取决于List
类型。在这种情况下使用案例类是否正确,或者我应该使用普通类?
编辑:我当前的代码
scala - 如何让我的重载构造函数接受任何数字类型?
我有一个CoordVector
接受的类,我在别处定义的类Vector[ComplexNumber]
在哪里ComplexNumber
,并且我也将其覆盖为接受Vector[Double]
。但我希望覆盖改为接受 Scala 中的任何数字类型。
这是我当前的代码
不幸的是,我不能只替换Double
为Numeric
,但是有没有一种简单的方法可以做到这一点,而不必为每个数字类型创建一个新的implicit def
and ?apply
python-2.7 - 在 socker 服务器构造函数覆盖中给出 4 个预期的 5 个参数
我正在尝试覆盖 TCPHandler 类的构造函数,以便可以将变量传递给处理函数,我在堆栈上遇到过其他帖子,但我并不清楚。我必须将一个字节数组传递给handle()
方法中的 sendall 函数,并且在寻找执行上述操作的不同方法时,重写构造函数是最首选的选项。
这是我的代码:
当我打印出 时help(superTCPHandler))
,handle()
函数没有显示它的继承,代码编译但什么也不做,或者客户端什么也没收到。我假设handle()
没有从我的自定义类中调用该函数。我确实有一种强烈的感觉,错误出在某个地方__init__
,我用不同的方法尝试了多次,但没有成功。这样做的正确方法是什么?
我不确定是否必须创建基本类(MyTCPHandler)的对象,因此在初始化 custom_server 对象之前我已经注释了服务器对象。我对套接字编程有点陌生,请原谅我的盲目错误。
这是我得到的错误:
custom_server = superTCPHandler((HOST, PORT), superTCPHandler, bytearray([114, 100, 100 ,100, 2]))
TypeError: init () 需要 5 个参数(给定 4 个)
[在 0.1 秒内完成,退出代码为 1]
c++ - 为什么我的复制构造函数出现“未定义的引用”错误?
我以为我已经为我initializer-list constructor
的 . 它应该是overloaded constructor
我的,从这种类型的输入Matrix class
中创建一个:我知道我的一个定义是不正确的,但我无法破译哪个(S)。Matrix
Matrix d = {{1,3}, {5,9};
c++ - C++:冲突模板中的重载和“非命名空间范围内的显式特化”错误
我在一个message
通常包含 的子类的类中嵌套了一个模板message
,但是如果我希望它包含message
自己,我会遇到 ctor 重载冲突的问题。(如果我能以某种方式让它忽略其中一种冲突方法会很好,但我不知道如何。)所以我尝试对messsage
容器进行专门化,但后来我得到了
非命名空间范围“类消息”中的显式专业化
我已经研究过如何处理这样的错误(比如这里、这里和这里),但我不知道如何将这些解决方案硬塞到我的问题中。
请记住,T
通常是message
. 唯一的例外是 when T
is message
。然后,第二个和第三个 ctor 之间存在明显的冲突。但是,如果我尝试专注于
然后我得到那个编译器错误,我不知道如何处理它。
java - 构造函数的条件调用
我有类似的情况。
如果我仍然想有条件地调用构造函数怎么办?(尽管他们说创建单独的类是值得建议的)
需求结构:
超级班:
派生类:
我应该如何实施?
编辑:
根据以下建议以这种方式实现它:
超级班:
派生类:
编辑2:
根据下面的建议,这是正确的使用方法instanceof
吗?
是显示以下错误:
java - 在“显式构造函数调用”期间,Java 如何区分几乎相同的构造函数?
我正在阅读 Java 教程并且有一个关于显式构造函数调用的问题。首先,这是教程中编写的字段和构造函数,以及我添加的另一个构造函数:
在默认构造函数中,“this(0,0,1,1);” 行没有指定 0 的类型。我的问题是,为什么它不转到我编写的第三个构造函数(使用“短”类型)或给出错误。当我打印出对象的“x”值时,我总是得到 0 而永远不会得到 4。Java 是如何决定使用“int”的?