초기화 (프로그래밍)

컴퓨터 프로그래밍에서 초기화(初期化, initialization, initialisation)는 데이터 오브젝트나 변수의 초기 값 할당을 의미한다.

C 계열 언어편집

이니셜라이저편집

C/C99/C++에서 이니셜라이저(initializer, 초기화 함수)는 선언자의 선택적 부분이다. '=' 문자, 그리고 { } 괄호식의 콤마 구분 목록이나 으로 구성된다. 전자의 경우 이시셜라이저 리스트(initializer list) 또는 초기화 리스트(initialization list)라고 한다. 초기화를 포함하는 선언은 보통 정의(definition)라고 한다.

"선언"과 "정의"라는 용어 간 구별을 하는 것이 좋은데, 선언의 경우 데이터 객체(또는 함수)의 할당을 의미한다. 실질적으로 C++ 표준에 따르면 정의가 곧 선언이다. 그러나 선언과 정의의 이러한 용례가 형식적으로는 잘못된 것이지만 일상화되어 있다.[1] 그러나 모든 정의가 선언으로 계수되더라도 그 반대는 참이 아니다. 모든 선언이 정의는 아니다.

C의 예:

int i = 0;
int k[4] = {0, 1};
char tx[3] = 'a';
char ty[2] = 'f';
struct Point {int x; int y;} p = { .y = 13, .x = 7 };

C++의 예:

int i2(0);
int j[2] = {rand(), k[0]};
MyClass* xox = new MyClass(0, "zaza");
point q = {0, i + 1};

각주편집

  1. C++ FAQs, by Cline, Lomow, and Girou, Addison-Wesley, 1999, ISBN 0-201-30983-1.