2016-07-09 8 views
-2
class Node 
{ 
    Node next; 
    int data; 
} 

Как и в этом примере для создания узла в списке ссылок, почему мы не использовали «новое» ключевое слово для объявления объекта-узла внутри класса узла?Объявление объекта внутри классов

+0

не достаточно коды. – duffymo

+0

Вверх проголосовали. Я думаю, что вопрос ясен. Интересно, почему это было проголосовано. – c0der

ответ

0

new не используется для объявления, а для создания объекта.

Код

Node next; 

является лишь декларацией.

Чтобы создать Node объект, который нужен будет использовать один из конструкторов Node «s и сделать что-то вроде:

next = new Node(.....); 
+0

@P_K Спасибо, что согласился. Другие ответы также полезны, рассмотрите полезные ответы. – c0der

0

Вы используете новый для Создайте объекты, а не отдельные объявления. next имеет значение null, прежде чем назначить ему объект.

1

Объект узла не был создан, он по-прежнему равен нулю.

Node next = new Node(...) 

Вышеупомянутый создает узел.

+0

Вверх проголосовали. Это правильно, как принятый ответ. – c0der

Смежные вопросы