Страница 1 из 2

Че-то не могу додумать...

Добавлено: 24 сен 2004, 02:50
Hup
Что-то застопорился на вот таком приколе...

Пусть есть класс

Код: Выделить всё

public class dta
{
      public bool use = false;
      public string name = "zero";
      public string summ = "zero"
      public dta
      {
      }
}
Потом в статической ф. Main
хочу создать одномерный массив объектов

Код: Выделить всё

//Например
dta [] cdata = new dta [100];
Вроде бы все нормально, но когда начиаю работать с этим массивом, вылетает ошибка... Что-то типа: Object referenses not set...(пару ошибок почно допустил :) )

Код: Выделить всё

// вот ошибочный код
cdata[n].name = xls.GetName(n+1);
//xls.GetName(int i); --- ф. возвращающая string

Добавлено: 24 сен 2004, 05:48
OD
:) Надо говорить не "Ну есть класс", а на какой он вобще нужен.
Первична задача, потом решение. Класс не эстетичен, много лишнего, а ошибка в неправильном объявлении массива (если ты на С++ пишешь) :wink:

Добавлено: 24 сен 2004, 09:25
Absurd
Наследование не используется?

Добавлено: 24 сен 2004, 09:46
Hup
OD!
Во-первых: Не придирайся к словам/
Во-вторых: Задача слишком громоздкая, чтобы ее описывать полностью(никому это не интересно)
В-третьих: Помоему ты вообще не знаком с ООП
В-четвертых: Я уже смело могу утвержать, что с С++ ны не знаком вообще...
Даже начинающий скажет, что это точно не С++
Для просвещения... Это С#

Добавлено: 24 сен 2004, 11:35
Kolinus
А одиночный объект создается нормально ?
Может дело не в массиве а в классе?
А массив не пробывал по статическому индексу вызывать ??
А xls проинициализирован конкретно.
(Я 0 в С# просто с точки зрения любого языка все нормально) так что может дело все-таки не в массиве ?

Добавлено: 24 сен 2004, 11:58
Hup
Вообщем мне подсказали ответ... Приятель Romeo, за что ему спасибо
Нехватало вот чего

Код: Выделить всё

dta [] cdata = new dta[size];
for(int i=0; i < size; i++) cdata[i] = new dta();

Добавлено: 24 сен 2004, 12:08
Kolinus
Вот млин все как в Яве - зачем тогда он нужен этот самый С#??

Добавлено: 24 сен 2004, 12:16
Hup
Я руководствовался опытом, полученным из С++, а тут такая подстава... Обидно, млин

Добавлено: 24 сен 2004, 12:17
Absurd
Всего месяц пишу на Яве, а уже C++ забыл =(

Добавлено: 24 сен 2004, 12:24
Kolinus
Значит сильно эффективная практика )).
Мне компилятор сишный тоже на System.out.println() ругается