string in STL-Containern unterbringen
-
Eigentlich dürfte das gar nicht kompilieren.
-
314159265358979 schrieb:
Bestimmt nicht. Du hast den Code hier auch nur abgetippt und dabei offenbar Fehler reingemacht, denn deine std::list heißt "liste" und nicht "list".
Zeig deinen originalen Code.Ich glaub das ist der originale.
-
Hacker schrieb:
314159265358979 schrieb:
Bestimmt nicht. Du hast den Code hier auch nur abgetippt und dabei offenbar Fehler reingemacht, denn deine std::list heißt "liste" und nicht "list".
Zeig deinen originalen Code.Ich glaub das ist der originale.
Du glaubst falsch. Halt die Klappe verdammt.
-
D3lta schrieb:
Wie würdet ihr das Problem lösen?
Welches Problem denn eigentlich? Einen Speicherzugriffsfehler kann es gar nicht geben, da das Programm sich nicht kompilieren lässt. Oder ist bei Dir der Compiler abgeschmiert?
-
Du glaubst falsch. Halt die Klappe verdammt.
Was ist bei dir los ?
-
7xCore schrieb:
Du glaubst falsch. Halt die Klappe verdammt.
Was ist bei dir los ?Ich hab ihn nicht lieb, weil er andauernd Unsinn postet.
-
Ich hab ihn nicht lieb, weil er andauernd Unsinn postet.

-
314159265358979 schrieb:
Bestimmt nicht. Du hast den Code hier auch nur abgetippt und dabei offenbar Fehler reingemacht, denn deine std::list heißt "liste" und nicht "list".
Zeig deinen originalen Code.Dieser Code und der originale sind 100% Eigenarbeit, ohne STRG+C oder STRG+V !
Dürfte ich bitte ein paar Gründe für diese Anschuldigungen zu hören bekommen?
listeheißtliste, weillistder Typ des verwendeten STL-Containers ist...Tachyon schrieb:
Eigentlich dürfte das gar nicht kompilieren.
Dieses Beispiel läuft einwandfrei, ohne Einwände oder Compilerfehler, dürfte ich trotzdem die gründe für diesen Verdacht zu erfahren bekommen?
314159265358979 schrieb:
7xCore schrieb:
Du glaubst falsch. Halt die Klappe verdammt.
Was ist bei dir los ?Ich hab ihn nicht lieb, weil er andauernd Unsinn postet.
Welcher Unsinn?
Außerdem bin halt noch ein ziemlicher Anfänger
mfg D3lta
P.S.: Ich poste den Code gleich

-
list.push_back("test");Diese Zeile ist falsch. Deine liste heißt "liste" und nicht "list".
-
314159265358979 schrieb:
7xCore schrieb:
Zitat:
Du glaubst falsch. Halt die Klappe verdammt.
Was ist bei dir los ?Ich hab ihn nicht lieb, weil er andauernd Unsinn postet.
Welcher Unsinn?
Mit dem kommentar von PI ist Hacker gemeint
-
Diese Zeile ist falsch. Deine liste heißt "liste" und nicht "list".
Was ?
Erläutere bitte nochmal , iwi versteh ich das nicht was du da sagst
-
list<string> LISTE; LISTE.push_back("hugo");vs.
list<string> LISTE; list.push_bacl("hugo");
-
314159265358979 schrieb:
list<string> LISTE; LISTE.push_back("hugo");vs.
list<string> LISTE; list.push_bacl("hugo");Achsoooo

-
Hab ich nur geschrieben, weil ich mir nicht vorstellen konnte, das jemand dreimal hintereinander den selben Schreibfehler macht...

-
D3lta schrieb:
...
Tachyon schrieb:
Eigentlich dürfte das gar nicht kompilieren.
Dieses Beispiel läuft einwandfrei, ohne Einwände oder Compilerfehler, dürfte ich trotzdem die gründe für diesen Verdacht zu erfahren bekommen?
...
Interressiert mich immer noch

314159265358979 schrieb:
list.push_back("test");Diese Zeile ist falsch. Deine liste heißt "liste" und nicht "list".
Schreibfehler

hier ist der sehr stark verkürzte Quellcode - und nein er ist von mir

#include "main.headers.h" class UI { private: //Zeigt an, ob das UI zu einem Server gehört bool server; //Sockets Socket_Server sserver; Socket_Server sclient; Socket_Client cserver; //buffer string msg, buffer, prot; char ch; //Speicher für die empfangenen Nachrichten deque<string> chatlog; deque<string>::iterator chatlog_it; //Variablen int maxx, maxy, x, y; //Logger Logger log; //Server-spezifisches list<struct ClientData> clients; list<struct ClientData>::iterator clients_it; public: UI(int argc, char* argv[], bool Server); virtual ~UI(); void UpdateData(); bool input(); void print(); const string& get_msg() const {return msg;} const list<struct ClientData>& get_ClientData() const {return clients;} Logger& get_logger() {return log;} }; ////////////////////////////////////////////////////////////////////////////// UI::UI(int argc, char* argv[], bool server) :log("log"), msg(""), buffer(""), sserver(log), sclient(log), cserver(log), server(server) { chatlog.clear(); initscr(); if(!has_colors()) { endwin(); cerr << "Das Terminal unterstützt keine Farben, versuchen sie es mit dem Konsolenmodus"; throw Exception("Das Terminal unterstützt keine Farben", &log); } start_color(); //... } UI::~UI() { endwin(); } void UI::UpdateData() { //hier habe ich msg=""; ergänzt if(server) RefreshDataServer(msg, sserver, clients); else RefreshDataClient(msg, cserver); chatlog.push_back(msg); //so sollte es heißen ;) if(msg != "") chatlog.push_back(msg); } bool UI::input() {//gibt solange, wie der User die Sitzung nicht beendet true zurück //... } void UI::print() { clear(); getmaxyx(stdscr, maxy, maxx); x=0; y=0; if(chatlog.size() != 0) { if(chatlog.size() >= 2) chatlog_it = chatlog.end() - (maxy-3); else chatlog_it = chatlog.begin(); for(; chatlog_it != chatlog.end() && y <= maxy-3; ++chatlog_it) mvprintw(y++, x, "%s", chatlog_it->c_str()); //laut gdb ist der Fehler hier if(chatlog_it == chatlog.end()) y = maxy-2; } else y=maxy-2; mvhline(y++, x, '-', maxy); mvprintw(y, x+2, "%s", buffer.c_str()); refresh(); }mfg D3lta
EDIT: Fehler gefunden

Er lag in der FunktionUI::UpdateData(), ich habe den betreffenden Abschnitt in den Code eingefügt und markiert...
Diese Fehler, die mich immer in die Verzweifelung treiben, sind der absolute Müll
Man sollte dieses Thema löschen...
-
D3lta schrieb:
D3lta schrieb:
...
Tachyon schrieb:
Eigentlich dürfte das gar nicht kompilieren.
Dieses Beispiel läuft einwandfrei, ohne Einwände oder Compilerfehler, dürfte ich trotzdem die gründe für diesen Verdacht zu erfahren bekommen?
...
Der Grund wurde zwar schon mehrfach angesprochen aber trotzdem:
#include <string> #include <list> using namespace std; int main() { list<string> liste; list.push_back("test"); //Das Objekt heisst liste und nicht list. List ist ein Klassentemplate und bietet kein push_back an... return 0; }Und der Code den Du hier zuletzt gepostet hast und die kommentierte Fehlerstelle hat genau was mit dem Code in Deinem Eingangsposting zu tun?