Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> инициализация структуры 
:(
    Опции темы
takedo
Дата 14.9.2009, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 501
Регистрация: 1.6.2005

Репутация: нет
Всего: 3



Добрый день, ночь, вечер.

Не могу понять, можно ли проинициализировать структуру? Хочу объявить примерно такую структуру:

Код

struct stPrimer
{
double A;
double B;
}
//////объявляем переменную ArSt
stPrimer[] ArSt= new stPrimer[13]


А вот ArSt хотел бы проинициализировать начальными значениями, как сделать - пока ума не приложу



--------------------
я не гольфист - я хоккеист
PM MAIL   Вверх
mrbrooks
Дата 14.9.2009, 16:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 17
Всего: 306



типа этого
Код

struct stPrimer
{
double A;
double B;
  public stPrimer(double a, double b)
  {
    A = a;
    B = b;
  }
}
//////объявляем переменную ArSt
stPrimer[] ArSt= new stPrimer[13] {new stPrimer(12.5,12.5)/*0-й*/, ... ,new stPrimer(12.5,12.5)/*12-й*/};


Это сообщение отредактировал(а) mrbrooks - 14.9.2009, 16:32
PM MAIL   Вверх
mr.Anderson
Дата 15.9.2009, 23:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 1
Всего: 128



mrbrooks все верно описал. Если в теории это расписывать, то структура по своей сути похожа на обычный класс. Для инициализации класса мы используем что? Правильно, конструктор. То же самое и в структуре. Разница в том, что в структуре при определении пользовательского конструктора также сохраняется и конструктор по умолчанию, определенный неявно в любой структуре (в отличие от класса, где при определении пользовательских конструкторов конструктор по умолчанию автоматически удаляется). Поэтому мысль проста: определяем в структуре публичный конструктор и используем его для инициализации членов структуры. Пример сказанного написан у mrbrooks'а.

Добавлено через 2 минуты и 16 секунд
Только одно уточнение к примеру выше. В приведенном примере поля A и B окажутся приватными по умолчанию, так что структура теряет свой смысл. Приведу свой практически аналогичный примерчик (на всякий случай):
Код

public struct Point
{
    public int X;
    public int Y;
    public Point(int x, int y)
    {
        X = x;
        Y = y;
    }
}

// пример использования
Point point = new Point(2, 3);
Console.WriteLine("({0}; {1})", point.X, point.Y);



--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0836 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.