powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Массив структур с инициализацией
11 сообщений из 11, страница 1 из 1
Массив структур с инициализацией
    #38036460
vlsaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть структура. У структуры существует конструктор.
Когда создается один экземпляр структуры, то все просто:
var myStruct = new MyStruct(number);
Конструктор инициализирует переменные.

Теперь я хочу создать массив структур, чтобы переменные проинициализировались.
Как?
var myMass = new MyStruct[100]; тут инициализация не происходит,

Что написать, чтобы сработал конструктор, не догоняю.
...
Рейтинг: 0 / 0
Массив структур с инициализацией
    #38036473
WitC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vlsaf,

...
for (int i=0;i<=100;i++)
myMass[i] = new MyStruct(number);
...

как-то так....
...
Рейтинг: 0 / 0
Массив структур с инициализацией
    #38036527
vlsaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Инициализация происходит два раза.

Первый раз при объявлении массива структур
var myStruct = new MyStruct(number);
дефолтная инициализация

Второй раз явная в цикле.
for (int i=0;i<=100;i++)
myMass[i] = new MyStruct(number)



За один раз, никак?
...
Рейтинг: 0 / 0
Массив структур с инициализацией
    #38036532
vlsaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опечатался.

Первый раз при объявлении массива структур
var myMass = new MyStruct[100]
...
Рейтинг: 0 / 0
Массив структур с инициализацией
    #38036545
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vlsaf, хламидамададный стиль
Код: 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.
	public static class Ext
	{
		public static IEnumerable<U> Map<T, U>(this IEnumerable<T> s, Func<T, U> f)
		{
			foreach (var item in s)
				yield return f(item);
		}
		
		public static IEnumerable<int> Seq(this int @from, int @to)
		{
			while(@from <= @to)
				yield return @from++;
		}		
		
	}	
	
public struct MyStruct
	{
		public int val;
		public MyStruct(int val){this.val = val;}
	}
	
void Main()
{
	var myMass = 1.Seq(100).Map(i => new MyStruct(i)).ToArray();
}



Ну... а вообще наворотить можно... и логику формирования элементов посл-ти
...
Рейтинг: 0 / 0
Массив структур с инициализацией
    #38036574
vlsaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да. Не все так просто в жизни.
buser, спасибо за урок.
...
Рейтинг: 0 / 0
Массив структур с инициализацией
    #38036578
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пишите на F#... Тока я это просто так... наметал...
...
Рейтинг: 0 / 0
Массив структур с инициализацией
    #38036856
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну а если без изврата...
Код: c#
1.
Enumerable.Range(0, 100).Select(v => new MyStruct(v)).ToArray();
...
Рейтинг: 0 / 0
Массив структур с инициализацией
    #38037181
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buservlsaf, хламидамададный стиль
Код: 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.
	public static class Ext
	{
		public static IEnumerable<U> Map<T, U>(this IEnumerable<T> s, Func<T, U> f)
		{
			foreach (var item in s)
				yield return f(item);
		}
		
		public static IEnumerable<int> Seq(this int @from, int @to)
		{
			while(@from <= @to)
				yield return @from++;
		}		
		
	}	
	
public struct MyStruct
	{
		public int val;
		public MyStruct(int val){this.val = val;}
	}
	
void Main()
{
	var myMass = 1.Seq(100).Map(i => new MyStruct(i)).ToArray();
}



Ну... а вообще наворотить можно... и логику формирования элементов посл-ти
Это че за говнокодище? )
...
Рейтинг: 0 / 0
Массив структур с инициализацией
    #38037568
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну хотся хоть г-на да написать... а то я ужо звереть с тэскуэля начинаю
...
Рейтинг: 0 / 0
Массив структур с инициализацией
    #38038661
Deza
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vlsafОпечатался.

Первый раз при объявлении массива структур
var myMass = new MyStruct[100]

а это как?
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Массив структур с инициализацией
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]