Methoden einer Klasse in einem Vektor aufrufen
-
Hallo zusammen
Folgendes Code Snippet funktioniert einwandfrei, ist aber in einem Loop eher langsam
std::vector<LEDFader*> m_LED; for (int i_ = 0; i_ < Anzahl_; i_++) { m_LED.push_back(new LEDFader(BaseChannel_ + i_)); }; t_ = 0; for (vector<LEDFader*>::const_iterator it = m_LED.begin(); it != m_LED.end(); it++) { if (t_ == m_Step) { if ((*it)->isOn() == false) { (*it)->on(); } else { (*it)->off(); }; }; t_++; };
Ich wollte das nun wie folgt kürzen
std::vector<LEDFader*>::iterator ptr_ = m_LED.begin(); (*ptr_ + m_Step)->on();
Ich erhalte aber einen Compiler Error
Blinker.cpp: 367:34: error: crosses initialization of 'LEDFader** ptr_ std*: vector<LEDFader*>::iterator ptr_ = m_LED.begin() Error compiling project sources
Wie kann ich direkt ein Element im Vektor erreichen und dessen Methoden aufrufen?
Gruss
Andy
-
m_LED[m_Step]->on();
-
manni66 schrieb:
m_LED[m_Step]->on();
Danke
Andy