compiler - ¿Está namespace-`static` en desuso en C++ 11?
c++14 (1)
El espacio de nombres static
desuso fue propuesto y aceptado para n3296 :
ID: FI 6
Ref: D.2 [depr.static] ¶ Párrafo 1
Comentario: el uso de estática en el ámbito del espacio de nombres no debe estar en desuso. Los espacios de nombres anónimos no son un reemplazo suficiente para la funcionalidad.
Resolución propuesta: Huelga [depr.static] completamente.
Propietario: CWG
Problema: 1012
Disposición: ACEPTADO
De hecho, la cláusula C (sobre compatibilidad) no enumera los cambios realizados en la cláusula D (en desuso), por lo que es difícil decirlo "de un vistazo". Pero, no, namespace- static
ya no está en desuso en C ++ 11.
Posible duplicado:
La desaprobación de la palabra clave estática ... ¿no más?
En C ++ 2003, namespace- static
está en desuso:
[C++03: 7.3.1.1/2]:
el uso de la palabra clavestatic
está en desuso cuando se declaran objetos en un ámbito de espacio de nombres (ver anexo D); El espacio de nombres sin nombre proporciona una alternativa superior.
No puedo encontrar dónde existe una cláusula de este tipo en C ++ 2011 (lo que sugiere un desacreditación), y 7.1.1
no parece prohibir el espacio de nombres static
(y si lo hubiera, esto sugeriría que la característica se había eliminado finalmente de el idioma); sin embargo, ninguno de los dos casos se enumera en C.2
(que detalla diferencias significativas entre 2003 y 2011).
¿El espacio de nombres static
ejecutado o no?