¿Cómo se ve un objeto en la memoria? [duplicar]

Posible duplicado:
Estructura de un objeto de C ++ en la memoria Vs un Struct
diseño de memoria objetos c ++

Esta es probablemente una pregunta realmente tonta, pero la preguntaré de todos modos. Tengo curiosidad por cómo se ve un objeto en la memoria. Obviamente, tendría que tener todos los datos de sus miembros en él. Asumo que las funciones para un objeto no se duplicarían en la memoria (¿o tal vez estoy equivocado?). Parece un desperdicio tener 999 objetos en la memoria, todos con la misma función definida una y otra vez. Si solo hay 1 función en la memoria para los 999 objetos, entonces, ¿cómo sabe cada función quién puede modificar los datos de los miembros (específicamente quiero saber en el nivel bajo)? ¿Hay un puntero de objeto que se envía a la función detrás de escena? ¿Quizás sea diferente para cada compilador?

Además, ¿cómo afecta esto la palabra clave estática? Con los datos de miembros estáticos, creo que todos los 999 objetos usarían la misma ubicación de memoria para sus datos de miembros estáticos. ¿Dónde se almacena esto? Las funciones estáticas supongo que también serían un solo lugar en la memoria, y no tendrían que interactuar con objetos instanciados, lo que creo que entiendo.

Respuestas a la pregunta(5)

Su respuesta a la pregunta