我想學習和實現類,並遇到了實現嵌套類的這個問題。我已經實現了它的一個版本。我想問你是否認爲它是嵌套類的好例子?我們如何在不嵌套這些類的情況下實現相同的目的?如何拿出好的設計?
#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打破課堂,你是什麼意思?並且只是爲了確認,編譯器將不會創建複製構造函數和賦值運算符,因爲構造函數已經被定義了,因爲它的規則是三? –