C의 생성자 호출 이해
C에서 생성자는 클래스의 객체가 생성될 때 자동으로 실행되는 특수 멤버 함수입니다. 이들은 객체의 데이터 멤버를 초기화하는 일을 담당합니다.
문제
다음 코드 조각을 고려하세요.
#include <iostream> using namespace std; class Class { public: Class() { cout << "default constructor called" << endl; } ~Class() { cout << "destructor called" << endl; } }; int main() { Class object(); // Incorrect syntax }
main() 함수 Class 클래스의 객체를 생성하려고 시도합니다. 그러나 예상대로 생성자를 호출하지 않습니다.
원인
문제는 개체 선언에 사용된 잘못된 구문에 있습니다.
Class object();
이 줄은 Class 객체를 반환하는 object()라는 함수를 선언합니다. Class 클래스의 객체를 올바르게 생성하려면 다음 구문을 사용해야 합니다.
Class object;
The Solution
클래스 이름 뒤의 괄호를 제거하면 올바르게 생성됩니다. Class 클래스의 객체를 선언합니다. 이 객체는 예상대로 기본 생성자를 올바르게 호출합니다.
추가 참고 사항
위 내용은 C 클래스 개체를 올바르게 인스턴스화하고 해당 생성자를 호출하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!