好的,如果我在这里没有看到非常简单的东西或忘记了 C++ 的一些基本规则,我提前道歉,但我不确定为什么这不能按预期工作。
这是我无法工作的代码示例
class Foo
{
private:
Bar *ptrBar;
public:
void doSomething(int x, Bar *p = ptrBar);
}
编译器对此函数的默认参数有问题。有什么原因导致这行不通。
基本上 doSomething 会对 Bar 对象进行一些操作,我希望它是默认情况下 ptrBar 指向的那个。除非我忘记了什么,否则一切似乎都很正常?