Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.02.2010, 14:38   #1
Парсифаль
Форумчанин
 
Аватар для Парсифаль
 
Регистрация: 28.04.2009
Сообщений: 186
По умолчанию Ошибка "void value not ignored as it ought to be"

Выдается следующая ошибка. Буду благодарен за помощь. Код максимально порезал, чтобы лишнего не было.

Код:
enum INSTR { RIH0, GZH0 };

class Candle
{
public:
      Candle();
      ~Candle();

     //Methods
     INSTR get_seccode() const { return seccode; }
     void set_seccode(INSTR value) { seccode = value; }
protected:
     INSTR seccode;
};

class Tick: public Candle
{
public:
      Tick();
      ~Tick();
protected:
      //переменные
};

class TickList
{
public:
       TickList();
       TickList(INSTR, long);
       ~TickList();
private:
       long array_length;
};

TickList::TickList(INSTR xseccode, long number)
{
     long i;
     array_length = number;
     Tick *pTick = new Tick[array_length];
     for (i = 0; i < number; i++)
     {
         *(pTick+i)->set_seccode(xseccode); //Ошибка выдается здесь
     }
}
При этом, если я объявляю не указатель на объект Tick, а сам объект, то эта ошибка не возникает.
Ruft ihm es zu durch alle Land', Der durch dies Wunder Gnade fand!
Hoch uber aller Welt ist Gott, Und Sein Erbarmen ist kein Spott
Парсифаль вне форума Ответить с цитированием
Старый 01.02.2010, 15:20   #2
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

Цитата:
*(pTick+i)->set_seccode(xseccode); //Ошибка выдается здесь
объект разыменовал, а идешь по указателю
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 01.02.2010, 16:46   #3
Парсифаль
Форумчанин
 
Аватар для Парсифаль
 
Регистрация: 28.04.2009
Сообщений: 186
По умолчанию

(pTick+i)->set_seccode(xseccode)?
Ruft ihm es zu durch alle Land', Der durch dies Wunder Gnade fand!
Hoch uber aller Welt ist Gott, Und Sein Erbarmen ist kein Spott
Парсифаль вне форума Ответить с цитированием
Старый 01.02.2010, 16:58   #4
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

ну да. можно и (*(pTick+i)).set_seccode(xseccode), но разыменование тут лишнее. или pTick[i].set_seccode(xseccode), оператор [] производит смещение и разыменование
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 02.02.2010, 03:22   #5
Парсифаль
Форумчанин
 
Аватар для Парсифаль
 
Регистрация: 28.04.2009
Сообщений: 186
По умолчанию

О! Вот теперь все стало на свои места! Спасибо огромное
Ruft ihm es zu durch alle Land', Der durch dies Wunder Gnade fand!
Hoch uber aller Welt ist Gott, Und Sein Erbarmen ist kein Spott
Парсифаль вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
Ошибка при использовании OlePropertyGet("Documents").OleProcedure("Add") в C++ Builder AleksP C++ Builder 7 11.04.2009 13:06
блок "cont" с права не принимает значение "margin: 10px;" которое описано в body tabikA HTML и CSS 5 24.02.2009 21:50
если пользователь наберет какой-то другой символ не "y" или "n" и нажмет enter, программа проигнорирует skobets Общие вопросы C/C++ 2 03.06.2008 06:51