En Excepción a la seguridad en una función de llamada
-
12-10-2019 - |
Pregunta
Es la llamada a f()
excepción de fallos?
inline std::auto_ptr<C> auto_new() {
return std::auto_ptr<C>(new C());
}
void f(std::auto_ptr<C> p1,
std::auto_ptr<C> p2);
// ...
{
f(auto_new(), auto_new());
}
En otras palabras, ¿Hay alguna diferencia cuando se trata de la atomicidad de la primera y segunda llamadas a funciones auto_new()
si las dos funciones están en línea?
Solución
Sí, es una excepción a salvo; no, inline
hace ninguna diferencia para los puntos de secuencia garantizados en la expresión llamando.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow