void worker(std::promise<int>* p) {

p->set_value(1);

}

std::thread t(worker, &p);



이거는 되는데 


void worker(std::promise<int>& p) {

p.set_value(1);

}


std::thread t(worker, p);

왜 이거는 컴파일할때 오류뜸?