Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Создание специфического дерева, C#

10K
17 августа 2009 года
Cybernetic
106 / / 22.07.2009
Нужно создать дерево, причем вершина должна смотреть на своего родителя, а так же на список своих детей.
После С++ я написал вот такую структур:

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').

Собсно, вопрос. А правильно ли я вообще пытаюсь создать дерево? Можно ли как то по другому в шарпе работать с указателями, и правильно ли я вообще работаю с ними в данном контексте?
297
17 августа 2009 года
koodeer
1.2K / / 02.05.2009
В данном случае нет нужды использовать unsafe указатели.
Достаточно управляемого кода:
 
Код:
class Node
{
    public Node parent;
    public List<Node> child;
}

Единственное, на что нужно обратить внимание - использовать класс, а не структуру. Дело в том, что class - это ссылочный тип (reference-based), а struct - соответственно структурный (или значимый) тип (value-based).
27K
28 августа 2009 года
mulbert
12 / / 19.07.2007
может я немного не в тему ... хех ... но по - моему тут лучше пользовать делегаты ...
1.9K
28 августа 2009 года
GreenRiver
451 / / 20.07.2008
Цитата: mulbert
может я немного не в тему ... хех ... но по - моему тут лучше пользовать делегаты ...


действительно не в тему...

5
29 августа 2009 года
hardcase
4.5K / / 09.08.2005
Автору настоятельно рекомендую наконецтаки купить/скачать книгу по C#. Например гуглить по персонали Троелсен.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог