Durante la lettura su multithreading in C++ 11, ho notato che alcuni tutorial fanno questo:È sicuro chiamare funzioni membro non const per oggetti rvalue?
std::thread(print_message, "Hello").detach();
// instead of...
std::thread t(print_message, "Hello");
t.detach();
Le mie domande sono:
- In generale, è sicuro per chiamare le funzioni di membro non-const per oggetti temporanei (valore)?
- In particolare, è sicuro farlo per un C++ 11
std::thread
?
Per il punto 1: è possibile chiamare le funzioni membro che non hanno una precondizione (per i tipi di classe ecc nello spazio dei nomi std). –