【发布时间】:2013-06-03 16:44:27
【问题描述】:
Java 有一个构造,它允许方法通过“this()”引用调用自身。 这个约定的名字现在让我忘记了。
编辑:称为构造函数委托,如下所述。只适用于构造函数,而不是我弄错的一般方法。
C++ 是否提供了对自身的引用,而不是特别是本身?
例如,我有一个具有多个重载之类的函数。
void DoesSomething(){
this->(default1, default2);
}
void DoesSomething(int myValue1){
this->(myValue1, default2);
}
void DoesSomething(int myValue1, int myValue2){
//Do stuff
}
【问题讨论】:
-
函数没有隐式的“this”指针。所以不行。改用函数名。
-
我们可以说“无限递归”... :)
-
这样的事情会与 C++ 函数调用运算符冲突 -
returntype operator()(parameters); -
很容易说下一个最好的事情就是使用函数名本身。以这种方式使用关键字有什么好处吗?
-
请注意,这里的特定示例使用默认参数构造
void DoesSomething(int myValue1=default1, int myValue2=default2)会更容易处理。我假设您对不起作用的情况或理解抽象点感兴趣,眼睛?
标签: c++ oop pointers function-pointers