我要修改構造使用初始化列表,如下面的例子:因爲你不能使用this
指針名躲藏在構造函數初始化列表
class Foo
{
public:
Foo(std::wstring bar);
private:
std::wstring bar;
};
// VERSION 1:
Foo::Foo(std::wstring bar) {this->bar = bar}
// VERSION 2:
Foo::Foo(std::wstring bar) : this->bar(bar) {} // ERROR!
不幸的是我不能做第2版對於數據成員,因爲(我猜)他們目前還不存在。那麼,如何處理名稱隱藏問題(即我的參數和數據成員具有相同的名稱)?