/ / usando los atributos de C ++ 11 - c ++, c ++ 11, atributos

utilizando atributos de C ++ 11 - c ++, c ++ 11, atributos

¿Podría por favor explicar cómo obtener información?de los atributos en C ++? Por ejemplo, quiero escribir C ++ en el enlace de python. Para esto, necesito anotar todos los métodos en clase con alguna información de enlace específica. Ahora necesito generar algún código por atributos. O otro ejemplo, asigne la clase a la entidad db. ¿O los atributos de C ++ 11 no son los mismos que en las anotaciones de Java o C #?

Respuestas

18 para la respuesta № 1

Atributos (a nueva característica de C ++ 11) son solo una sintaxis estandarizada para el compiladorextensiones Para hacer lo que quieras, necesitarías un compilador con las extensiones adecuadas. Hasta ahora, no creo que ningún compilador implemente sintaxis de atributos, y mucho menos atributos específicos para enlaces Python.

Porque están destinados a las extensiones del compilador,no hay una forma estándar de crear sus propios atributos, como puede hacerlo con las anotaciones de Java o los atributos de C #. Por supuesto, un compilador podría proporcionar esta capacidad como una extensión ...;)


3 para la respuesta № 2

Una actualización con alguna información más reciente:

GCC ahora (a partir de 4.8) implementa los atributos de C ++ 11 como una sintaxis alternativa para __attribute__((XXX)).

También puede usar el mecanismo del complemento GCC para definir nuevos atributos - vea https://gcc.gnu.org/onlinedocs/gccint/Plugins.html.

También puedes hacer esto en python usando el plugin gcc-python - ver https://gcc-python-plugin.readthedocs.org/en/latest/attributes.html.