• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Modyfikacja wektora w metodzie klasy

0 głosów
41 wizyt
pytanie zadane 26 grudnia 2016 w C i C++ przez PryPry Nowicjusz (160 p.)

Witam,

Od jakiegoś czasu mierze się z problemem modyfikacji zawartości i wielkości wektora w zdefiniowanej przeze mnie klasie, mianowicie:

Definicja klasy:

class Route {
std::vector<double> *begin;
std::vector<double> *end;
std::vector<int> *speed;
std::vector<bool> *spot;
public:
Route(TStringList*);
void Modify();
};

Metodą Modify() chciałbym usuwać ostatni element wektora begin, end, speed i spot:

void Route::Modify(){
begin->pop_back();
end->pop_back();
speed->pop_back();
spot->pop_back();
}

Wartości do wektorów wpisuje za pomocą konstruktora, tam metody dla wektorów działają. 

Mógłby ktoś mnie oświecić co robię źle? smiley

komentarz 26 grudnia 2016 przez Criss VIP (102,700 p.)
Te vectory na pewno w ogóle istnieją? Mam na myśli, że to są tylko wskaźniki, nie mam żadnej pewności czy wskazują na obiekty. Pokaż konstruktor.

1 odpowiedź

0 głosów
odpowiedź 26 grudnia 2016 przez PryPry Nowicjusz (160 p.)
Problem rozwiązany! :) I co ciekawe tkwił w strukturze projektu (piszę okienka w C++ Builderze).
Kompilator błędów nie wywalał, ale przy testowaniu programu program się wysypywał.

W Form1 (tam gdzie deklarowałem obiekt) metody działały, ale w Form2 już wywalalo błędy, a debugger wskazywał na zawartość metody jako błędną. Okazało się że dopisanie: Form1->Obiekt->Modify(); rozwiązało problem.

Podobne pytania

0 głosów
4 odpowiedzi 69 wizyt
pytanie zadane 29 grudnia 2016 w C i C++ przez Adrian Stasiak Początkujący (410 p.)
0 głosów
1 odpowiedź 131 wizyt
pytanie zadane 13 listopada 2016 w C i C++ przez Evelek Nałogowiec (25,330 p.)
0 głosów
3 odpowiedzi 142 wizyt
pytanie zadane 16 czerwca 2015 w C i C++ przez tarnasm Gaduła (3,010 p.)
...