S.T.E.E.L.
20-01-2007, 01:16
Estou aqui com uma duvidazita de sintaxe...
sendo A uma classe
A ** p = new A*[3];
Os "**" significam o quê?
tks.
sendo A uma classe
A ** p = new A*[3];
Os "**" significam o quê?
tks.
|
View Full Version : Dúvida de sintaxe em C++ S.T.E.E.L. 20-01-2007, 01:16 Estou aqui com uma duvidazita de sintaxe... sendo A uma classe A ** p = new A*[3]; Os "**" significam o quê? tks. HecKel 20-01-2007, 01:22 Apontador de um apontador. basicamente estás a dizer que a posição do apontador que o apontador p aponta é um objecto do tipo A. Agora a parte do new A*[3] é que fiquei baralhado..., aquele *[3] deixou-me confuso :X http://en.wikipedia.org/wiki/Pointer#C.2FC.2B.2B.2FFreeBASIC abraços, HecKel S.T.E.E.L. 20-01-2007, 14:42 Muchas gracias... :D Eu julgo que o A*[3] seja um array de ponteiros... Rui_Carlos 20-01-2007, 20:18 Apontador de um apontador. basicamente estás a dizer que a posição do apontador que o apontador p aponta é um objecto do tipo A. Agora a parte do new A*[3] é que fiquei baralhado..., aquele *[3] deixou-me confuso :X provavelmente é um array de apontadores... o que explica o '**'. linkcr 21-01-2007, 20:49 Se fizeres: typedef A* A_ptr; A_ptr* p = new A_ptr[3]; O código fica mais fácil de ler :) S.T.E.E.L. 21-01-2007, 21:31 Se fizeres: typedef A* A_ptr; A_ptr* p = new A_ptr[3]; O código fica mais fácil de ler :) tks, mas tens a certeza absoluta de que funciona (A é uma classe)? Experimentei como disseste (n me esqueci do typedef) e não deu. Bea Tech 23-01-2007, 23:21 se quiseres fzer um array dinamico de 2 dimanesoes tens q utilizar este tipo de ponteiro tipo int ** arr; arr=calloc(int*,2) arr[0] = calloc(int,10); arr[1] = calloc(int,10); |