me sale el error "intitializer fails to determine size of 'K'
" en la líneaerror: el inicializador no puede determinar el tamaño de la ‘K’
int K[]= new int[Vertices->total];
¿Cómo lo soluciono?
me sale el error "intitializer fails to determine size of 'K'
" en la líneaerror: el inicializador no puede determinar el tamaño de la ‘K’
int K[]= new int[Vertices->total];
¿Cómo lo soluciono?
Cambio
int K[]= new int[Vertices->total];
a
int *K = new int[Vertices->total];
La primera es la forma Java
de crear una matriz, donde K
es una referencia a una matriz de enteros. Pero en C++
necesitamos hacer que K
sea un puntero al tipo entero.
Thankx funciona, pero ¿puedo usar la misma K para almacenar matrices – smile
@shiva Almost. Las matrices en c son en realidad solo indicadores de bloques de memoria. entonces, si quiere usar K para manipular una matriz de matriz de entero, la declaración sería 'int K ** = new int * [
new int[Vertices->total]
devuelve un puntero y, por lo tanto, int *K = new int[Vertices->total];
debería funcionar bien.
Si se conoce el tamaño de Vertices->total
en tiempo de compilación (es decir, constante), entonces podría haber utilizado int K[Vertices->total];
// asigna la memoria en la pila
Es necesario decidir si está programando en C++ '' o ' C', y, si es el último, si estás usando 'C99' o no. –
Mensaje de error pésimo. Qué compilador estas usando? –
@nobugz En realidad, creo que es un mensaje de error razonable. –