0
デコレータデザインパターンのコンセプトを掴むのは難しいので、デザインパターンについてはかなり初心者です。単独でリンクされたリストクラスを継承する二重リンクリストクラスに飾ることは可能ですか?デコレータデザインパターンを使用して単一リンクリストをデコレートしてリストを作成する
ListAsSLL.h:二重リンクリストクラスに前のノードへのポインタを持つ構造体を持つの追加機能と同じ機能を与える
#ifndef LISTASSLL_H
#define LISTASSLL_H
class ListAsSLL
{
protected:
struct node{
int i;
struct node* next;
};
node* head;
node* tail;
int listSize;
public:
ListAsSLL();
virtual void addToBeginning(int obj);
virtual void addAtPos(int obj, int i);
virtual void addToEnd(int obj);
virtual void del(int i);
virtual void overwrite(int obj, int i);
virtual void grow();
virtual void shrink();
};
#endif //LISTASSLL_H
私は以下のクラスを飾るしたいと思います。
うまくいけば、誰かがこれを行う方法についていくつかの光を当てることができたらうれしいです。前もって感謝します。
実装する必要がある二重リンクリストのインターフェイスは何ですか? – Slava
@ Slava ListAsSLLとまったく同じインターフェイス – Keagansed
あなたはどのデコレータパターンが使用されているのか分かりません。これは、1つのインタフェースが必要で、別のインタフェースが必要な場合に使用されます。したがって、必要なインタフェースを提供するためにデコレータを使用します。あなたはデコレータのパターンに完全に無関係にしようとしているものです。 – Slava