>백엔드 개발 >C++ >C 내장 유형에는 실제로 기본 생성자가 있습니까?

C 내장 유형에는 실제로 기본 생성자가 있습니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-09 09:42:08412검색

Do C   Built-in Types Actually Have Default Constructors?

내장 유형에 기본 생성자가 있나요?

C 영역에서 기본 유형에는 생성자가 없는 것으로 가정되는 경우가 많습니다. 그러나 TC PL에서는 내장 유형에도 기본 생성자가 있다고 주장합니다. 이러한 명백한 모순을 명확히 하기 위해 우리는 값 초기화 및 생성자 구문의 미묘한 차이를 조사했습니다.

값 초기화: 주의 산만

기사를 읽은 후 다음이 분명해졌습니다. int()는 기본 생성자 호출이 아니라 값 초기화로 인해 0을 생성합니다. 이로 인해 기본 유형에는 생성자가 없다는 믿음이 생겼습니다.

생성자 유사 구문: 잘못된 이름

게다가 TC PL 텍스트에서는 "생성자 유사"를 사용합니다. int()와 같은 구문을 사용하여 내장 유형을 초기화합니다. 그러나 이 구문은 실제로 생성자를 호출하지 않습니다. 대신 값 초기화를 수행합니다.

Bjarne의 설명: 개념적 구별

텍스트 작성자로부터 설명을 구한 후 Bjarne Stroustrup은 이 텍스트가 개념적 구별을 참조한다고 설명했습니다. . 내장 유형은 생성자의 표준 정의를 공식적으로 준수하지 않음에도 불구하고 생성자를 소유하는 것으로 간주됩니다.

결론: 고유한 접근 방식

C에서 기본 유형은 다음과 같이 동작합니다. 기술적으로는 없지만 생성자가 있는 경우. 이를 통해 생성자와 유사한 구문을 사용하여 편리한 초기화가 가능합니다. 혼란을 피하고 C 프로그래밍을 올바르게 이해하려면 내장 유형의 고유한 특성을 이해하는 것이 중요합니다.

위 내용은 C 내장 유형에는 실제로 기본 생성자가 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.