2011-02-05 10 views
8

Tengo un programa con demasiados inicializadores estáticos y destructores. Quiero deshacerme de todos ellos. Entonces necesito una forma de encontrarlos.Encontrar inicializadores estáticos y destructores en C++

Correr nm en el ejecutable da algo como esto: 0004bfc0 t _ Z41 _static_initialization_and_destruction_0ii

¿Hay una buena manera de obtener una lista de archivos desde donde se están incluyendo static_initializers?

+0

posible duplicado de [¿Determinar el orden de inicialización estático después de la compilación?] (Http://stackoverflow.com/questions/1224361/determine-static-initialization-order-after-compilation) –

+0

No es un duplicado. Esta pregunta se trata de encontrar todos los inicializadores estáticos, la pregunta vinculada es sobre predecir el orden en que se ejecutan. – finnw

Respuesta

2

puede ejecutar nm en un archivo de objeto que luego se vincula al ejecutable final. o crea una secuencia de comandos para analizar la salida de nm por ti si tienes mucho por hacer.

dependiendo de las definiciones de los datos, también puede encontrar que tiene duplicados que podrían reducirse a un solo objeto.

Cuestiones relacionadas