C++ 배열 크기 생략


배열 크기 생략

배열의 크기를 지정할 필요가 없습니다. 그러나 그렇지 않으면 삽입된 요소만큼만 크기가 커집니다.

string cars[] = {"Volvo", "BMW", "Ford"}; // size of array is always 3

이것은 완전히 괜찮습니다. 그러나 미래의 요소를 위한 추가 공간을 원할 경우 문제가 발생합니다. 그런 다음 기존 값을 덮어써야 합니다.

string cars[] = {"Volvo", "BMW", "Ford"};
string cars[] = {"Volvo", "BMW", "Ford", "Mazda", "Tesla"};

그러나 크기를 지정하면 배열이 추가 공간을 예약합니다.

string cars[5] = {"Volvo", "BMW", "Ford"}; // size of array is 5, even though it's only three elements inside it

이제 다른 요소를 덮어쓰지 않고 네 번째 및 다섯 번째 요소를 추가할 수 있습니다.

cars[3] = "Mazda";
cars[4] = "Tesla";

선언 시 요소 생략

선언 시 요소를 지정하지 않고 배열을 선언하고 나중에 추가하는 것도 가능합니다.

string cars[5];
cars[0] = "Volvo";
cars[1] = "BMW";
...