class Node
{
public Node parent;
public List<Node> child;
}
Создание специфического дерева, C#
После С++ я написал вот такую структур:
struct Node
{
/*
какие то мои данные в вершине
*/
public Node* parent;
public List<Node>* child;
}
Но нифига не заработало. Сначала студия попросила поставить спецификатор к указателям unsafe и позволить ей копмилировать неверифицируемый код, включив параметр /unsafe.
Сделал. Но и это не помогло. Ошибка такая:
Cannot take the address of, get the size of, or declare a pointer to a managed type ('SequentialDecoding.Node').
Собсно, вопрос. А правильно ли я вообще пытаюсь создать дерево? Можно ли как то по другому в шарпе работать с указателями, и правильно ли я вообще работаю с ними в данном контексте?
Достаточно управляемого кода:
Код:
Единственное, на что нужно обратить внимание - использовать класс, а не структуру. Дело в том, что class - это ссылочный тип (reference-based), а struct - соответственно структурный (или значимый) тип (value-based).
может я немного не в тему ... хех ... но по - моему тут лучше пользовать делегаты ...
Цитата: mulbert
может я немного не в тему ... хех ... но по - моему тут лучше пользовать делегаты ...
действительно не в тему...
Автору настоятельно рекомендую наконецтаки купить/скачать книгу по C#. Например гуглить по персонали Троелсен.