[eside-ghost] Matriz de Structs c++

albertito atetinho en gmail.com
Mar Jun 12 21:07:06 CEST 2007


hola de nuevo... :)
> Ar, 2007eko Ekaren 12a(e)an, albertito(e)k idatzi zuen:
>   
>> hola,
>>
>>     
>>> Ar, 2007eko Ekaren 12a(e)an, Iker Perez de Albeniz - Txupete -(e)k idatzi
>>>
>>> zuen:
>>>       
>>>> Aupa!!
>>>>
>>>> Ando peleandome con C++ y tengo una dudilla..
>>>>
>>>> He creado una matriz de structs:
>>>>
>>>> struct BaseBandWidth{
>>>> 	int BwVideo;
>>>> 	int BwSound;
>>>> 	int BwData;
>>>> }
>>>>
>>>>
>>>> la creo...
>>>>
>>>>
>>>>
>>>> 	//Reserva de memoria para una matriz de "BaseBandWidth"
>>>> 	int nfil=4, ncol=10, i, j;
>>>> 	BaseBandWidth **bwarray;
>>>>
>>>> 	//se reserva memoria para el vector de punteros
>>>> 	bwarray = new BaseBandWidth* [nfil];
>>>>
>>>> 	//Se reserva memoria para cada fila
>>>> 	for (i=0; i<nfil; i++)
>>>> 		bwarray[i] = new BaseBandWidth [ncol];
>>>>
>>>>
>>>> y ahora kiero inicializarla y no se si se puede hacer los
>>>> siguiente???¿?¿¿
>>>>
>>>> 	//inicializamos el array
>>>> 	for (i=0; i<nfil; i++)
>>>>             for(j=0;j<ncol;j++){
>>>>                    bwarray[i][j].BwVideo = 0;
>>>>                    bwarray[i][j].BwAudio = 0;
>>>>                    bwarray[i][j].BwData = 0;
>>>>              }
>>>>
>>>> si alguien me puede confirmar si estoy haciendo una burrada... o como se
>>>> haria..
>>>>         
>>> Deberías utilizar los contenedores que ofrece el estándar C++, por
>>> ejemplo un vector, y sus iteradores, salvo que haya razones de mucho peso
>>> para no hacerlo.
>>>       
>> justo lo que estaba pensando... :). y ya que estás en C++, y el uso de
>> clases en lugar de structs??
>>     
>
> Depende del uso que se vaya a hacer, pero tampoco parece que un struct esté 
> mal aquí. Al fin y al cabo, la diferencia entre una estructura y una clase es 
> mínima.
>
>   
totalmente de acuerdo, pero como está trabajando en C++... De todos 
modos, Stroustrup recomienda el uso de clases frente a structs :). y ya 
que nos ponemos... XD, que si el acceso a los datos se realiza a través 
de funciones miembro, que la inicialización queda centralizada en un 
único punto (por lo tanto, único punto de fallo), etc... :P

un saludo!! ;)

-- 
albertito
Blog Personal: http://www.ifelsedeveloper.blogia.com
Página Personal: http://atetinho.googlepages.com/home
C.A.S: http://www.ajedrezsanturtzi.com

IMPORTANTE:
Por favor, si me mandas correos con copia a varias personas, pon mi dirección de correo en copia oculta (CCO), para evitar que acabe en montones de sitios, eliminando mi privacidad, favoreciendo la propagación de virus y la proliferación del SPAM.



Más información sobre la lista de distribución eside-ghost