2.1.4 Void
2.1.4 Void
정의: Void — 타입의 부재를 나타냅니다. 어떤 것(보통 함수)이 값을 갖지 않는다는 것을 표현할 때 사용돼요.
Void는 실제로는 타입이 아니기 때문에 타입 시스템에서 특별한 경우예요. 주로 함수의 인자나 반환 타입에 적용되는 "타입이 없음"을 표현하는 데 쓰입니다.
우리는 이미 처음의 "Hello World" 예제에서 Void를 "보았어요":
/**
Multi-line comments for documentation.
**/
class Main {
static public function main():Void {
// Single line comment
trace("Hello World");
}
}
함수 타입은 함수 타입(Function Type) 절에서 자세히 다루지만, 여기서 빠르게 미리보면 이렇습니다: 위 예제의 main 함수의 타입은 Void->Void인데, 이는 "인자가 없고 반환도 없다"는 뜻으로 읽힙니다.
Haxe는 Void 타입의 필드와 변수를 허용하지 않으며, 그런 선언을 하면 오류를 냅니다:
// Arguments and variables of type Void are not allowed
var x:Void;
출처: Void
본문
Void의 의미
Void는 값이 전혀 없다는 타입의 부재를 뜻해요. 가장 흔한 용도는 함수의 반환 타입으로, 해당 함수가 아무것도 반환하지 않는다는 것을 나타냅니다. 예제의 main():Void가 대표적이에요.
함수 타입에서의 Void
함수 타입에서 Void는 인자 목록이 비어 있거나 반환값이 없음을 표현합니다. void->void처럼 쓰여 "인자 없음, 반환 없음"을 의미하죠. 자세한 내용은 함수 타입 절에서 다룹니다.
선언 제약
var x:Void;처럼 Void 타입의 변수나 필드를 선언하는 것은 허용되지 않아요. Void는 값의 자리에 쓰일 수 없는 타입이므로, 컴파일러가 이를 거부합니다. Void는 함수의 시그니처에서만 의미가 있다는 점을 기억해 두세요.