작성
·
574
0
오류 내용 <delegating constructors are permitted only in C++11
:elementary(input_name, 19)>
코드 내용
using namespace std;
class elementary
{
private:
string m_name;
int m_age;
public:
elementary(const string& input_name, const int& input_age)
:m_name(input_name), m_age(input_age)
{}
elementary(const string& input_name)
:elementary(input_name, 19)
{}
void print()
{
cout<< m_age<< " " << m_name<<endl;
}
};
int main()
{
elementary s1("jack", 19);
s1.print();
}
이렇게 나름 혼자서 짜봤는데요. 제 코드에 문제가 있는 걸까요...??
답변 2
0
0
안녕하세요! 8장까지 오셨으면 슬슬 속도가 붙으시겠네요.
위임생성자(delegating constructors)는 C++11이 맞습니다. 아래 내용도 참고하세요.
Fortunately, C++11 adds the ability to chain constructors together (called delegating constructors)
https://www.learncpp.com/cpp-tutorial/b-5-delegating-constructors/