Я разрабатываю класс Node, в котором одно из свойств представляет собой массив из 27 других узлов. Тем не менее, я всегда получаю исключение NullReference, когда пытаюсь использовать этот массив. Я не знаю, что я делаю неправильно, так как я пытаюсь объявить каждый узел из массива. Я объявляю массив в свойствах, как следует:Node Array всегда дает мне NullReferenceException
NodoTrie* hijos[27];
И это, как я пытаюсь использовать их:
void NodoTrie::Insertar(string word) {
char a = word.at(0);
newArray();
NodoTrie* rec;
int x = (int)a;
if (x == 165)
x =79;
else if (x >= 79)
x++;
x -= 65;
if (hijos[x] == NULL)
hijos[x] = new NodoTrie;
rec = hijos[x];
cout << "Se inserto la" << a << endl;
if (word.length() == 1)
rec->endWord = true;
else
rec->Insertar(word.erase(0, 1));
}
void NodoTrie::newArray() {
for (int i = 0; i < 27; i++)
hijos[i] == new NodoTrie;
}
Я знаю, реализация не самая симпатичная или идеальная, но я бы очень хотел знать, что мне нужно сделать, чтобы массив существовал, и Я больше не получаю эту ошибку.
* но мне бы очень хотелось знать, что мне нужно сделать, чтобы массив существовал, * - используйте 'std :: vector' и оставьте этот указательный материал позади. –
PaulMcKenzie