그냥 게임개발자

쓰지 말아야 할 초기화 방법 {0, } 본문

C++ 나만의 복습

쓰지 말아야 할 초기화 방법 {0, }

sudoju 2024. 4. 7. 17:19
int a[5] = {0, };

이런 코드 본적있나?

난 없어

근데 이거 자주쓰인대요

그렇대

 

아무튼

 

이 코드 또한 0으로 초기화한다는 의미인데 문법은 아래와 같다.

T myarray[N] = {0, };

하지만 이렇게 초기화 하는 것은 초반에 한번하는 정적 초기화로써만 유효하지 동적초기화로써는 동작하지 않는다.

 

#include <iostream>

using namespace std;

int main()
{
    int a[5] = {0, };
    for (int i = 0; i < 5; ++i)
        a[i] = i;
        
    a[5] = {0, };
        
    for (int i : a) 
        cout << i << ' ';
    
    return 0;
}

 

애초에 막아놨나보다.

안된다.

'C++ 나만의 복습' 카테고리의 다른 글

copy()  (0) 2024.04.07
memcpy()  (1) 2024.04.07
memset()  (0) 2024.04.07
fill()  (0) 2024.04.07
이터레이터는 일반화된 포인터인가?  (0) 2024.04.07