Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
4 / 4 / 2
Регистрация: 10.08.2015
Сообщений: 59
1

List<class> как передается?

21.03.2016, 10:56. Показов 698. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как правильно передается List<class>? Никак до конца не могу понять

Вот пускай будет пример:

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
class MyClass
    {
        List<string> lstS = new List<string> { "sad", "ags", "sdfsf" };
        public void Method()
        {
            foreach (var item in lstS)
            {
                Console.WriteLine(item);
            }
        }
    }
 
    class Program
    {
        static void Main(string[] args)
        {
            M();
            Console.ReadLine();
        }
 
        static void M(List<MyClass> m)
        {
                                                          //Что тут делать? 
        }
    }
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.03.2016, 10:56
Ответы с готовыми решениями:

Конвертировать один элемент из List<List<Class>> в list и string
Как можно перевести один выбранный элемент из List&lt;List&lt;Data&gt;&gt; myList в list и string? Например,...

List <Class> как реализовать ?
дело в том, что я впервые сталкиваюсь со списками с несколькими параметрами нет времени читать...

List<T> + class : как присваивать?
Есть класс class Field { public byte Mask; public int Block; } static List&lt;Field&gt;...

Как добавить в List<MyClass> данные типа Class
Язык программирования C#! Всем добрый день! Есть такая проблема связанная со свойством типа...

10
Эксперт .NET
17793 / 12944 / 3381
Регистрация: 17.09.2011
Сообщений: 21,227
21.03.2016, 10:58 2
Цитата Сообщение от Dipe Посмотреть сообщение
Что тут делать?
Чего-нибудь интересное со списком, на который ссылается переменная m.
0
4 / 4 / 2
Регистрация: 10.08.2015
Сообщений: 59
21.03.2016, 11:05  [ТС] 3
Цитата Сообщение от kolorotur Посмотреть сообщение
Чего-нибудь интересное со списком, на который ссылается переменная m.
Ну скажем я хочу это занести в txt файл... Тогда:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 static void Main(string[] args)
        {
            M();          //тут ругается(Ни одна из перегрузок метода "M" не принимает 
                           //"0" аргументов) вот на этом моменте и застрял... какой именно
                          // аргумент нужно занести? Никак не могу понять
 
            Console.ReadLine();
        }
static void M(List<MyClass> m)
        {
            using (StreamWriter sw = new StreamWriter("Test.txt"))
            {
                sw.WriteLine(m);
            }
        }
0
6 / 6 / 7
Регистрация: 19.03.2016
Сообщений: 50
21.03.2016, 11:11 4
Dipe, аргумент List<MyClass>, очевидно.
0
Эксперт .NET
17793 / 12944 / 3381
Регистрация: 17.09.2011
Сообщений: 21,227
21.03.2016, 11:13 5
Цитата Сообщение от Dipe Посмотреть сообщение
тут ругается(Ни одна из перегрузок метода "M" не принимает "0" аргументов
Правильно ругается, вы же определили функцию "М от м" или М(м), где м — ссылка на экземпляр класса.
А при выполнении этой функции у вас отсутствует входной параметр — та самая ссылка.

Цитата Сообщение от Dipe Посмотреть сообщение
какой именно аргумент нужно занести? Никак не могу понять
Ссылку на любой список.
Можете, к примеру, создать новый:
C#
1
2
3
4
5
6
 static void Main(string[] args)
        {
            List<MyClass> list = new List<MyClass>();
            M(list);
            Console.ReadLine();
        }
1
4 / 4 / 2
Регистрация: 10.08.2015
Сообщений: 59
21.03.2016, 11:35  [ТС] 6
Добавлено через 2 минуты
Цитата Сообщение от kolorotur Посмотреть сообщение
Правильно ругается, вы же определили функцию "М от м" или М(м), где м — ссылка на экземпляр класса.
А при выполнении этой функции у вас отсутствует входной параметр — та самая ссылка.
Спасибо )))) А то что только не делал... Никак почему то понять этого не мог...
Учиться, учиться и снова учиться))

Добавлено через 19 минут
Цитата Сообщение от kolorotur Посмотреть сообщение
C#
1
static void Main(string[] args) { List<MyClass> list = new List<MyClass>(); M(list); Console.ReadLine();
}
Снова не могу понять. Сейчас в файл записывается вот это:
System.Collections.Generic.List`1[ConsoleApplication1.MyClass]


Даже прочитать не выходит. Снова что-то не то делаю
C#
1
2
3
4
5
6
7
 static void M(List<MyClass> m)
        {
            foreach (var item in m)
            {
                Console.WriteLine(item);
            }
        }
0
484 / 439 / 123
Регистрация: 05.01.2010
Сообщений: 1,848
21.03.2016, 11:51 7
Dipe, неявно (? если не прав, поправьте) вызывается метод ToString(), который в вашем случае вернет полный тип объекта в виде строки
0
4 / 4 / 2
Регистрация: 10.08.2015
Сообщений: 59
21.03.2016, 11:54  [ТС] 8
Цитата Сообщение от valera_21 Посмотреть сообщение
Dipe, неявно (? если не прав, поправьте) вызывается метод ToString(), который в вашем случае вернет полный тип объекта в виде строки
Тип объекта возвращает, но сам объект что-то не могу понять как вернуть.
0
484 / 439 / 123
Регистрация: 05.01.2010
Сообщений: 1,848
21.03.2016, 12:07 9
Dipe, если вам надо записывать в файл/считывать с файла массив объектов класса - используйте сериализацию.

если просто надо что то сделать с каждым объектов класса - делайте.

з.ы. что вообще хотите сделать то?
0
4 / 4 / 2
Регистрация: 10.08.2015
Сообщений: 59
21.03.2016, 12:18  [ТС] 10
Цитата Сообщение от valera_21 Посмотреть сообщение
з.ы. что вообще хотите сделать то?
У меня есть класс который возвращает некоторые данные... Я должен их записать в .svn файл...
Если знаете:

solid ascii
facet normal 0.000000e+000 0.000000e+000 -1.000000e+000
outer loop
vertex -7.146446e+001 9.646446e+001 0.000000e+000
vertex -7.853554e+001 9.646446e+001 0.000000e+000
vertex -7.146446e+001 1.035355e+002 0.000000e+000
endloop
endfacet

Цифры и есть мои данные, они у меня в классе треугольник... Я их беру оттуда и должен записать в строчки где vertex.

Это как должно выглядеть:

solid ascii
facet normal 0 0 0
outer loop
vertex a b c
vertex a b c
vertex a b c
endloop
endfacet

Где a, b, c - мои точки
0
484 / 439 / 123
Регистрация: 05.01.2010
Сообщений: 1,848
21.03.2016, 12:44 11
Dipe, в структуру .svn файла не вникал.. так что возможно некоторые части надо вынести из цикла/внести в цикл
грубо - как то так
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
        public void Save(IEnumerable<Triangle> items)
        {
            using (var sw = new StreamWriter("Test.txt"))
            {
                sw.WriteLine("solid ascii");
                sw.WriteLine("facet normal 0 0 0");
                sw.WriteLine("outer loop");
                foreach (var item in items)
                {
                    sw.WriteLine("vertex {0} {1} {2}", item.A, item.B, item.C);
                }
                sw.WriteLine("end loop");
                sw.WriteLine("end facet");
            }
        }
1
21.03.2016, 12:44
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.03.2016, 12:44
Помогаю со студенческими работами здесь

Как организовать цикл по всем элементам List<Class>?
Здравствуйте, Как организовать цикл по всем элементам List&lt;Class&gt;? Делаю так: class Program ...

Поиск в List<class>
привет есть mycl, с 2 полями List&lt;mycl&gt; pic = new List&lt;mycl&gt;(); pic.Add(new mycl(&quot;aaa&quot;, &quot;zzz&quot;));...

Хранение List<class>
У мене есть класс который принимает имя и пароль. class User { string name { get;...

Перезапись класса в List<Class>
Добрый день, уважаемые форумчане! Настал тот день, когда я решил зарегистрироваться на форуме, так...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Почему при инициализации массива 3х3х3 будет создано 13 одномерных массивов?
Alexander-7 16.01.2025
При инициализации многомерного массива, в данном случае трехмерного массива размерностью 3x3x3, может возникнуть путаница относительно того, как структура данных организована в памяти. Общее число. . .
Использование связки C# и PHP в корпоративной разработке и микросервисной архитектуре
InfoMaster 16.01.2025
Введение в интеграцию C# и PHP В современной корпоративной разработке все чаще возникает потребность в создании гибких и масштабируемых решений, способных эффективно решать широкий спектр. . .
Как использовать Kerio дома для управления сетью и пользователями
InfoMaster 16.01.2025
Использование технологий для улучшения повседневной жизни стало неотъемлемой частью современного быта. Одной из таких технологий является Kerio — мощный инструмент для управления сетью и. . .
Есть ли будущее у DVD и Blu-ray?
InfoMaster 16.01.2025
В эпоху стремительного развития цифровых технологий и повсеместного распространения потоковых сервисов вопрос о будущем физических носителей информации становится все более актуальным. Особенно остро. . .
Как проводить научные вычисления на Python
InfoMaster 15.01.2025
Python стал одним из наиболее востребованных языков программирования в области научных вычислений благодаря своей простоте, гибкости и обширной экосистеме специализированных библиотек. Научные. . .
Создание игры типа Minecraft на PyGame/Python: пошаговое руководство
InfoMaster 15.01.2025
В данном руководстве мы рассмотрим процесс создания игры в стиле Minecraft с использованием библиотеки PyGame на языке программирования Python. Этот проект идеально подходит как для начинающих. . .
Как создать свою первую игру в стиле Doom на Unreal Engine
InfoMaster 15.01.2025
Разработка шутера от первого лица в стиле классического Doom представляет собой увлекательное путешествие в мир игрового программирования, где сочетаются творческий подход и технические навыки. . . .
Параллельное программировани­е: основные технологии и принципы
InfoMaster 15.01.2025
Введение в параллельное программирование Параллельное программирование представляет собой фундаментальный подход к разработке программного обеспечения, который позволяет одновременно выполнять. . .
Как написать микросервис на C# с Kafka, MediatR, Redis и GitLab CI/CD
InfoMaster 15.01.2025
В современной разработке программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот подход позволяет разделить сложную систему. . .
Что такое CQRS и как это реализовать на C# с MediatR
InfoMaster 15.01.2025
Концепция CQRS и её роль в современной разработке В современном мире разработки программного обеспечения архитектурные паттерны играют ключевую роль в создании масштабируемых и поддерживаемых. . .
Как настроить CI/CD с Azure DevOps
InfoMaster 15.01.2025
CI/ CD, или непрерывная интеграция и непрерывное развертывание, представляет собой современный подход к разработке программного обеспечения, который позволяет автоматизировать и оптимизировать процесс. . .
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru