elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Duda sobre consumo de memoria
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda sobre consumo de memoria  (Leído 2,351 veces)
anonimo12121


Desconectado Desconectado

Mensajes: 1.813


Ver Perfil WWW
Duda sobre consumo de memoria
« en: 20 Agosto 2012, 00:52 am »

Hola buenas, estoy investigando sobre el consumo de memoria de mis programas, y bueno he dado con una duda y es la siguiente, Cuanta memoria consume mi clase.

Código
  1. #include <iostream>
  2. using namespace std;
  3. class Item{
  4.    private:
  5.        int x;
  6.    public:
  7. };
  8.  
  9. class Object {
  10.    private:
  11.        Item *I;
  12.    public:
  13.        Object(){
  14.            I = new Item[100];
  15.            cout << sizeof(I)<< endl;
  16.        };
  17. };
  18.  
  19. int main() {
  20.    Object o;
  21.    cout << sizeof(o)<< endl;
  22.    cin.get();
  23.    return 0;
  24. }

Las dos salidas dan 4 bytes.
alguien me puede explicar esto si estoy reservando 100 en la array.

saludos


En línea

Página para ganar Bitcoins y Dinero: http://earnbit.hol.es/
Video de YouTube con Hack para el LoL: http://adf.ly/5033746/youtube-lolemuhack
Si quieres ganar dinero con adfly entra y registrate aquí -> http://adf.ly/?id=5033746
avesudra


Desconectado Desconectado

Mensajes: 724


Intentando ser mejor cada día :)


Ver Perfil
Re: Duda sobre consumo de memoria
« Respuesta #1 en: 20 Agosto 2012, 01:51 am »

Buscando en internet , dato curioso Xafi , te aviso si encuentro algo.
Mira esto http://www.cprogramming.com/tutorial/size_of_class_object.html
Parece que hay que sumarlo todo , el operador sizeof parece que te da el tamaño de el objeto pero me parece que este es como si fuese un puntero.


« Última modificación: 20 Agosto 2012, 01:54 am por avesudra » En línea

Regístrate en
anonimo12121


Desconectado Desconectado

Mensajes: 1.813


Ver Perfil WWW
Re: Duda sobre consumo de memoria
« Respuesta #2 en: 20 Agosto 2012, 02:05 am »

okis lo mirare por la mañana. avesudra cualquier cosa dímelo gracias.
En línea

Página para ganar Bitcoins y Dinero: http://earnbit.hol.es/
Video de YouTube con Hack para el LoL: http://adf.ly/5033746/youtube-lolemuhack
Si quieres ganar dinero con adfly entra y registrate aquí -> http://adf.ly/?id=5033746
rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: Duda sobre consumo de memoria
« Respuesta #3 en: 20 Agosto 2012, 03:36 am »

Para la pregunta en lo general ¿Que aplica en el tamaño de un objeto en C++? solo tienes que revisar la pagina indicada cortesía de avesudra.

Y sobre tu pregunta en concreto:
Las dos salidas dan 4 bytes.
alguien me puede explicar esto si estoy reservando 100 en la array.
Ello se debe a que estas calculando el tamaño de un puntero (la variable "I" es de tipo "Item *"), deberías utilizar "sizeof(Item)".

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
anonimo12121


Desconectado Desconectado

Mensajes: 1.813


Ver Perfil WWW
Re: Duda sobre consumo de memoria
« Respuesta #4 en: 20 Agosto 2012, 11:19 am »



mmhh todas me dan 4 bytes.
 
Código
  1. #include <iostream>
  2. using namespace std;
  3. class Item{
  4.    private:
  5.        int x;
  6.    public:
  7. };
  8.  
  9. class Object {
  10.    private:
  11.        Item *I;
  12.    public:
  13.        Object(){
  14.            I = new Item[100];
  15.            cout << sizeof(I)<< endl;
  16.        };
  17. };
  18.  
  19. int main() {
  20.    Object o;
  21.    cout << sizeof(o)<< endl;
  22.    cout << sizeof(Object) << endl;
  23.    cout << sizeof(Item) << endl;
  24.    cin.get();
  25.    return 0;
  26. }
En línea

Página para ganar Bitcoins y Dinero: http://earnbit.hol.es/
Video de YouTube con Hack para el LoL: http://adf.ly/5033746/youtube-lolemuhack
Si quieres ganar dinero con adfly entra y registrate aquí -> http://adf.ly/?id=5033746
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
duda sobre consumo de ram en 64 bits
GNU/Linux
rastanthology 3 3,511 Último mensaje 12 Julio 2010, 15:37 pm
por luinuz
Medir consumo de la memoria de video[XP]
Windows
flacc 2 4,443 Último mensaje 1 Marzo 2011, 23:57 pm
por flacc
AYUDA! Tengo una duda sobre el consumo de energía... « 1 2 »
Hardware
SuperDraco 10 6,942 Último mensaje 15 Marzo 2011, 04:45 am
por SuperDraco
Firefox reducirá, por fin, su gigantesco consumo de memoria
Noticias
wolfbcn 8 3,563 Último mensaje 9 Julio 2011, 23:04 pm
por Foxy Rider
Duda sobre consumo de recursos
Programación C/C++
NekoOs 0 1,596 Último mensaje 11 Enero 2014, 00:40 am
por NekoOs
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines