PDA

Просмотр полной версии : Че-то не могу додумать...



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

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


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

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

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

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

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

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


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

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

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

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

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

Hup
24.09.2004, 12:55
Тоже начинаю быстро забывать C++...