YS's develop story
C++ Error ) 식에 클래스 형식이 있어야 합니다, error C2288 , 디폴트 생성자 관련 실수 본문
안녕하세요 ~
C++에서 디폴트생성자 관련해서 실수했을때 발생하는 에러를 정리하고자 글을 작성합니다.
바로 아래 코드를 확입합시다.
#include <iostream>
using namespace::std;
class Practice {
private:
int num;
public:
Practice(int num = 10) {
this->num = num;
}
void showNum() {
cout << num;
}
};
int main() {
Practice prac1();
prac1.showNum();
return 0;
}
보기에는 문제가 없어 보이는 코드 같습니다.
하지만 아래와 같이 에러가 발생하게 됩니다.
에러의 원인은 아래와 같습니다
생성자 함수의 디폴트 값을 통해서 클래스를 생성할 때는 ()를 붙이면 안됩니다!
main함수의 부분을 아래와 같이 코드를 변경해 주어야 하죠.
int main() {
Practice prac1;
prac1.showNum();
return 0;
}
이는 생성자 함수의 디폴트 값을 이용해 클래스를 생성할 때 쉽게 할 수 있는 실수 이기때문에
다음에 실수 했을 때 헤메지 않기위해서 글을 작성해 둡니다~~
그럼 다음 글에서 봬요 !!
'기타' 카테고리의 다른 글
[Git] Git 메일 주소 , 사용자 이름 확인 및 변경 (git config --global user) (0) | 2020.12.15 |
---|---|
[Git] Git 저장소 생성, 최초로 커밋하기 (git commit,git add,git status,git log) (0) | 2020.12.15 |
C++ ) assert매크로사용하기 (0) | 2020.10.01 |
C++ Error ) 기본 인수 재정의, 함수의 디폴트 값은 함수의 선언에 작성해야 한다. (0) | 2020.09.26 |
C언어 ) char [], char * 의 차이점 (0) | 2020.09.22 |
Comments