Cómo inicializar una matriz en c ++

En C ++, una variable local no se inicia la vida con un valor válido, ni siquiera el valor 0. Dicho de otra manera, una variable local contiene la basura hasta que almacene algo en ella. matrices localmente declarados son los mismos - cada elemento contiene la basura hasta que realmente se asigna algo a ella.

Usted debe inicializar las variables locales cuando se declaran. Esta regla es aún más cierto para las matrices. Es demasiado fácil para acceder a elementos de la matriz sin inicializar pensando que son valores válidos.

“La variable local” se refiere a las variables normales declaradas dentro de una función. puristas C ++ en realidad llaman a estas variables automáticas para diferenciarlos de las variables estáticas.

Afortunadamente, una pequeña matriz puede ser inicializado en el momento en que se declara con una lista de inicialización. El siguiente fragmento de código se muestra cómo se hace esto:

flotar floatArray [5] = {0,0, 1,0, 2,0, 3,0, 4,0} -

esto inicializa floatArray [0] a 0, floatArray [1] a 1,0, floatArray [2] a 2,0, y así sucesivamente.

C ++ rellena la lista de inicialización con 0s si el número de elementos en la lista es menor que el tamaño de la matriz. De hecho, una lista de inicialización vacío se puede utilizar para inicializar una matriz a 0:

int nArray [128] = {} - // inicializar matriz a todos de 0

El número de constantes de inicialización puede determinar el tamaño de la matriz. Por ejemplo, se podría haber determinado que floatArray tiene cinco elementos simplemente contando los valores dentro de las llaves. C ++ puede contar también (esto es, al menos, una cosa C ++ puede hacer por sí mismo).

flotar floatArray [] = {0,0, 1,0, 2,0, 3,0, 4,0} -
Artículos Relacionados