Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++ 로컬 및 전역 변수는 기본적으로 어떻게 초기화됩니까?

<시간/> <본문>

다음은 지역 및 전역 변수에 대해 동일합니다. 기본적으로 변수를 선언할 때마다 달리 지정하지 않는 한 컴파일러는 기본 생성자를 호출합니다.

언어 수준 유형(예:포인터, 'int', 'float', 'bool' 등) "기본 생성자"는 아무 작업도 수행하지 않으며 선언될 때 메모리를 있는 그대로 둡니다. 이것은 일반적으로 이전에 그 메모리에 무엇이 있었는지 또는 메모리가 어디에서 왔는지조차 확신할 수 없기 때문에 거의 무엇이든 될 수 있음을 의미합니다.

생성자가 없는 클래스를 생성하면 컴파일러는 각 멤버/변수의 생성자를 단순히 호출하는 생성자를 생성합니다. 인수가 있는 생성자가 있고 인수가 없는 생성자가 없는 경우 컴파일러는 일치하는 생성자를 찾을 수 없다는 오류를 발생시킵니다.