Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
 Аватар для JAGUAR XS
0 / 0 / 1
Регистрация: 13.11.2020
Сообщений: 92

Работа с List. CS7036

04.10.2024, 04:29. Показов 949. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
При инициализации экземпляра коллекции в List, компилятор выдает ошибку CS7036 при объявлении new Person{ Name = "Василий", Birthdate = "30", City = "СПБ", Country = "Россия"}

Конструктор и свойства заданы правильно. Откуда она вылезает

Объясните пожалуйста

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class Person
{
    public string Name { get; set; }
    public string Birthdate { get; set; }
    public string City { get; set; }
    public string Country { get; set; }
 
    public Person(string name, string birthdate, string city, string country)
    {
        Name = name;          
        Birthdate = birthdate;
        City = city;
        Country = country;
    }
    List<Person> people = new List<Person>
    {
       new Person{ Name = "Василий", Birthdate = "30", City = "СПБ", Country = "Россия"}
    };
 
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.10.2024, 04:29
Ответы с готовыми решениями:

Грамотная работа с List<List<string>>
Здравствуйте, присваиваю переменной List&lt;List&lt;string&gt;&gt; значения другой переменной(тоже List&lt;List&lt;string&gt;&gt;), но после удаления...

CS7036 в Program.cs
Доброго времени суток!) Пишу небольшую программу и т.о. пытаюсь изучить язык C# Столкнулся с весьма непонятной для меня проблемой,...

Работа с List, условие для создания нового List
Всем привет Попал в тупик, есть список с MeshRender объектов, есть список с уникальными Color этих объектов. Нужно составить новый...

8
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3429 / 2748 / 575
Регистрация: 04.09.2018
Сообщений: 8,625
Записей в блоге: 3
04.10.2024, 07:06
Цитата Сообщение от JAGUAR XS Посмотреть сообщение
Откуда она вылезает
Цитата Сообщение от JAGUAR XS Посмотреть сообщение
new Person( Name = "Василий", Birthdate = "30", City = "СПБ", Country = "Россия")
   
0
 Аватар для Andrey-MSK
3349 / 2235 / 388
Регистрация: 14.08.2018
Сообщений: 7,557
Записей в блоге: 4
04.10.2024, 08:24
Цитата Сообщение от JAGUAR XS Посмотреть сообщение
C#
1
new Person{ Name = "Василий", Birthdate = "30", City = "СПБ", Country = "Россия"}
Если убрать конструктор или добавить ещё один пустой
C#
1
public Person() { }
, то и эта запись сработает, так как будут использоваться свойства класса.
0
 Аватар для JAGUAR XS
0 / 0 / 1
Регистрация: 13.11.2020
Сообщений: 92
04.10.2024, 15:18  [ТС]
Поробую сегодня. Буду очень рад, если заработает

Добавлено через 1 минуту
Может я чего то не понимаю? В чем суть конструктора? И что пустой конструктор тут делает? Я знаю что конструктор принимает свойства...
0
 Аватар для Andrey-MSK
3349 / 2235 / 388
Регистрация: 14.08.2018
Сообщений: 7,557
Записей в блоге: 4
04.10.2024, 16:17
Цитата Сообщение от JAGUAR XS Посмотреть сообщение
В чем суть конструктора?
Создаёт объект класса. Конструктор есть всегда, даже если явно не указан в коде, по умолчанию он пустой
C#
1
public MyObject() { }
и вызывается оператором new() без параметров. Если определён хотя бы один конструктор с параметрами, то пустого уже нет и его нужно явно прописывать, как я и показал выше.

А вообще вот - Использование конструкторов (Руководство по программированию на C#).
0
 Аватар для JAGUAR XS
0 / 0 / 1
Регистрация: 13.11.2020
Сообщений: 92
04.10.2024, 17:29  [ТС]
Я понял! Если я хочу коллекцию данных List, передать в другой класс где будет выведение данных в ListView, надо ли мне там создавать повторно тот же самый List, с объявлением коллекции которую я передаю ?
0
2287 / 1603 / 400
Регистрация: 26.06.2017
Сообщений: 4,748
Записей в блоге: 1
05.10.2024, 16:30
Цитата Сообщение от JAGUAR XS Посмотреть сообщение
надо ли мне там создавать повторно тот же самый List
Зависит от целей. В большинстве случаев нет не надо, объекты списка (List) передаются по ссылке. И это удобно так, как при изменении исходных объектов изменяется и их представление в элементах управления. Однако бывают ситуации, когда требуется автономная копия данных, в этом случае нужно выполнять клонирование объектов.
Касательно случая с связыванием с ListView вам подойдёт первый вариант.
1
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16140 / 11264 / 2888
Регистрация: 21.04.2018
Сообщений: 33,110
Записей в блоге: 2
05.10.2024, 18:09
Цитата Сообщение от JAGUAR XS Посмотреть сообщение
И что пустой конструктор тут делает? Я знаю что конструктор принимает свойства...
Как уже выше написали, если явно не задавать конструктор класса, то автоматически будет создан дефолтный конструктор (без параметров).
Конструкторы с параметрами создаются по двум основным причинам:
1) Передать значения полям "только для чтения". В том числе это относится к полям хранящих значения авто свойств, хотя явно такие поля не видны.
В этом случае обычно конструктор без параметров или не задаётся, так как невозможно вне конструктора задать значения readonly полям. Или, реже, конструктор по умолчанию вызывает параметрический конструктор в который передаёт некие, условно общие или дефолтные, значения параметров
2) Для удобства и сокращения "ручного" кода. В этом случае всегда задаётся конструктор по умолчанию и дополнительно к нему конструкторы с параметрами. И здесь обычно бывает наоборот, если требуется какая-то настройка экземпляра, то она задаётся в конструкторе без параметров, а параметрические конструкторы обращаются к нему.
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3429 / 2748 / 575
Регистрация: 04.09.2018
Сообщений: 8,625
Записей в блоге: 3
06.10.2024, 18:10
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Если убрать конструктор или добавить ещё один пустой
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
то и эта запись сработает, так как будут использоваться свойства класса
в таком случае станет вообще непонятным наличие List<Person> people в данном экземпляре класса..
Для чего он?
А ошибка конкретно по инициализации листа (синтактическая).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.10.2024, 18:10
Помогаю со студенческими работами здесь

Работа с STL list + пропись List.h
Здравствуйте! Помогите, пожалуйста, разобраться с STL list. Нужно сделать программу в которой будет содержаться класс Student, прописать...

Ошибка CS7036
Возникает ошибкаCS7036 в строке 59:Отсутствует аргумент, соответствующий требуемому формальному параметру &quot;Адрес&quot; из...

Ошибка CS7036 при вычислении функции
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using...

Задание по темам: ООП, исключения, работа со строками (возможно применение коллекций List), работа с компоновщиком
ТЯЖЕЛО РАБОТАТЬ С КОМПОНОВЩИКОМ. БУДУ РАД ВАШИМ ОТВЕТАМ. 1. Ознакомиться с принципом работы структурного шаблона проектирования...

Ошибка CS7036 Отсутствует аргумент, соответствующий требуемому параметру
в общем, возникла такая проблема, писал код в vs и вышла ошибка во время вызова M(); код выглядит так using System; using...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru