82 / 60 / 17
Регистрация: 21.08.2015
Сообщений: 1,044
1

Автоматически добавить объект в объект

22.12.2016, 11:02. Показов 1570. Ответов 4
Метки нет (Все метки)

Приветствую тебя читатель.
Попытаюсь объяснить чего я хочу, если не понятно уточняйте.
Вообщем дело такое, есть объект который содержит другие объекты, в данном случаи объект называется «Components»
Как видите в примере я добавляю каждый объект вручную Components.ob.ob = new Component("element_1_1");
А я хочу чтобы каждый объект добавлялся ну скажем по средством цикла, ибо за ранние количество объектов мне неизвестно.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
using System;
 
namespace Cisco_for_ccna
{
    class test
    {
        static void Main()
        {
            Component Components = new Component("root");
 
            Components.ob = new Component("element_1");
            Components.ob.ob = new Component("element_1_1");
            Components.ob.ob.ob = new Component("element_1_2");
            Components.ob.ob.ob.ob = new Component("element_1_3");
 
            Console.WriteLine("Ready!");
            Console.ReadKey();
        }
    }
 
    class Component
    {
        public Component ob;
        string A { get; set; }
 
        public Component(Component _ob, string a)
        {
            A = a;
            ob = _ob;
        }
 
        public Component(string a)
        {
            A = a;
        }
    }
 
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.12.2016, 11:02
Ответы с готовыми решениями:

Найти объект, ссылающийся на заданный объект
Пишу игру растения против зомби. Дабы централизировать всю логику передвижений и действий юнитов,...

Объект ссылается на объект. Приравнивание объектов
Сегодня понял что видимо мое представление об объекте было в корне не верно. До сих пор считал что...

Как добавить объект в коллекцию?
Помогите объект класса добавить в коллекцию, а в коллекции установить сортировку по выбранному полю.

Ошибка "Ссылка на объект не указывает на экземпляр объект" в программе
Здравствуйте ! Ссылка на объект не указывает на экземпляр объекта. Примерно понимаю в чём ошибка,...

4
906 / 663 / 318
Регистрация: 23.10.2016
Сообщений: 1,538
22.12.2016, 11:57 2
Лучший ответ Сообщение было отмечено Чипс как решение

Решение

C#
1
2
3
4
5
6
7
8
        var root = new Component("root");
        root.ob = new Component("element_1");
        var current = root.ob;
        for (int i = 1; i <= 3; i++)
        {
            current.ob = new Component("element_1_" + i.ToString());
            current = current.ob;
        }
1
82 / 60 / 17
Регистрация: 21.08.2015
Сообщений: 1,044
22.12.2016, 12:52  [ТС] 3
Спасибо.
Я это запускаю и вижу что работает, но сегодня чего-то тупняк жуткий =(
Могу я вас попросить немного разъяснить как работает ваш код, для меня понять важно именно сам принцип.
0
906 / 663 / 318
Регистрация: 23.10.2016
Сообщений: 1,538
22.12.2016, 13:00 4
Цитата Сообщение от Чипс Посмотреть сообщение
немного разъяснить как работает ваш код
Просто следим за тем, чтобы current указывал на последний созданный элемент.
В 6 строке последнему созданному элементу присоединяем новый элемент, а в 7 строке делаем так, чтобы current опять ссылался на последний элемент.
0
82 / 60 / 17
Регистрация: 21.08.2015
Сообщений: 1,044
22.12.2016, 13:49  [ТС] 5
Ну вроде стало понятней, спасибо еще раз.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.12.2016, 13:49
Помогаю со студенческими работами здесь

Hashtable вложенные хэш таблицы. Как удалить или добавить объект в "подтаблице"?
Имеется каталог музыкальных компакт-дисков, реализованный классом HashTable (по заданию). Нужно...

Узнать объект, в котором создался другой объект
Есть первый класс, который создает второй класс, код которого ниже. Как мне во втором классе...

Добавить с другого потока объект в ObservableCollection
Пробовал так, но ошибка Application.Current.Dispatcher.Invoke(new Action(() =&gt; ...

Добавить в уже существующий объект свойство и положить в него объект
У меня имеется такая вложенность в редьюсере initialState = { prop1: { props2: {...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru