-9
テンプレートを使用してC++でDoubly Linked Listを実装しています。私はテンプレートを手にしています。実行中のテンプレートプログラムがクラッシュする
template <class T>
class DList{
Node<T> *head;
Node<T> *tail;
public:
Dlist(){
head = tail = nullptr;
}
void addToHead(T el){
Node<T> *newNode = new Node<T>(el);
if(head == nullptr){
head = tail = newNode;
}
else{
head -> prev = newNode;
newNode -> next = head;
head = newNode;
}
} };
このaddToHead()を使用すると、if条件は実行されません。そして、プログラムがクラッシュします。
デバッグを行う必要があります。 –
テンプレート化されていないバージョンを明示的に書くことができなかったときに、テンプレート化されたクラスと関数を書くことをここ何人もの人がなぜ試みているのですか?それは、C++を学ぶための複雑さを増やすだけです。 –
あなたが知っていることは、その比較が実行されていないということですか? –