【发布时间】:2011-10-04 14:56:00
【问题描述】:
在 C++ 中,我试图模拟 Java 如何处理对其构造函数的调用。在我的 Java 代码中,如果我有 2 个不同的构造函数并且想要一个调用另一个,我只需使用 this 关键字。示例:
public Constructor1(String s1, String s2)
{
//fun stuff here
}
public Constructor2(String s1)
{
this("Testing", s1);
}
使用此代码,通过使用 Constructor2 实例化一个对象(传入单个字符串),它将只调用 Constructor1。这在 Java 中效果很好,但我怎样才能在 C++ 中获得类似的功能?当我使用 this 关键字时,它会抱怨并告诉我 'this' cannot be used as a function。
【问题讨论】:
-
你不能用 C++ 那样做,你需要做一些像 MyObject *x = new MyObject("Testing,s1")