在以下情况下,在构造函数初始化列表中使用this
指针是否合法?我正在尝试使用类方法的任务启动一些后台线程。这是一个很好的方法,我能做得更好吗?它适用于clang(LLVM 3.5),但我担心未定义的行为。
class SomeClass {
public:
SomeClass();
private:
std::thread syncThread;
void syncTask();
};
SomeClass::SomeClass()
:syncThread(&SomeClass::syncTask, this) { // is it legal? object is under construction
}