클래스를 배우고 구현하려고하는데 중첩 클래스를 구현할 때이 문제가 발생했습니다. 나는 그것의 버전을 구현했다. 중첩 클래스에 대한 좋은 예라고 생각하는지 묻고 싶습니다. 이 수업을 중첩하지 않고 어떻게 동일한 목적을 달성 할 수 있습니까?좋은 디자인을 만드는 방법?
#include<iostream>
class Stack {
class Node {
public:
int data;
Node* next;
Node(int data, Node* next);
~Node();
}* head;
public:
Stack();
Stack(const Stack& s);
void operator=(const Stack& s);
~Stack();
void push(int data);
int peek() const;
int pop();
};
먼저 복사하면 수업이 중단됩니다. 당신은 복사 생성자와 대입 연산자가 필요합니다. 다음으로 peek 함수가 const 일 수 있습니다. –
"중첩 클래스 구현 문제"이 문제에 대해 질문하는 것이 더 좋습니다. – SigTerm
@NeilKirk 수업을 어 겼음을 의미합니까? 그리고 생성자가 이미 정의 되었기 때문에 컴파일러가 3의 규칙 때문에 복사 생성자와 대입 연산자를 생성하지 않는다는 것을 확인하기 위해? –