0
C++でリンクリストを実装しようとしています。以下は、私のコードであり、私はこの例外にC++ LinkedListエラー:アクセス違反エラー
First-chance exception at 0x012F4C61 in LinkedList.exe: 0xC0000005: Access violation reading location 0xCDFCA94C.
ヘッダファイル
#pragma once
#include "LinkNode.h"
class LinkedList
{
private:
LinkNode *head;
LinkNode *tail;
public:
LinkNode add(int data);
void print();
LinkNode getHead();
LinkedList(void);
~LinkedList(void);
private:
void modify();
};
CPPファイル
#include "stdafx.h"
#include "LinkedList.h"
#include <iostream>
using namespace std;
LinkedList::LinkedList(void)
{
this->head = NULL;
this->tail = NULL;
}
LinkedList::~LinkedList(void)
{
}
LinkNode LinkedList :: add(int data)
{
if(this->head == NULL)
{
this->head = new LinkNode(data);
this->tail = head;
return *head;
}
else
{
LinkNode node(data);
tail->next = &node;
tail = tail->next;
}
}
主な機能
int _tmain(int argc, _TCHAR* argv[])
{
LinkedList linklist;
linklist.add(1);
linklist.add(2);
linklist.add(3);
linklist.add(4);
linklist.add(5);
linklist.print();
system("pause");
}
'LinkedList :: add'関数を詳しく見てみましょう。リストが空でないときはどうしますか? *動的に*ノードを割り当てるはずですか? –