Heim > Backend-Entwicklung > C#.Net-Tutorial > Kompilierungsfehler und Lösungen für die C++-Minicsv-Bibliothek

Kompilierungsfehler und Lösungen für die C++-Minicsv-Bibliothek

黄舟
Freigeben: 2016-12-14 16:54:27
Original
1394 Leute haben es durchsucht

Es gibt ein Projekt, das das Schreiben einer CSV-Datei erfordert, um Daten darzustellen. Auf Github gibt es eine einfache Lese- und Schreibbibliothek für CSV namens „minicsv“, also habe ich sie heruntergeladen. Beim Kompilieren des Beispiels traten jedoch folgende Probleme auf:

In Datei enthalten aus example.cpp:1:0:
minicsv.hpp: In Funktion 'csv::ofstream& Operator<<(csv::ofstream&, const T&)':
minicsv.hpp:326:38: Fehler: Keine passende Funktion für Aufruf von 'csv::ofstream::escape_and_output(std::basic_ostringstream::__string_type)'
ostm.escape_and_output(os_temp.str());
^
minicsv.hpp:326:38: Hinweis: Kandidat ist:
minicsv.hpp:266:8: Hinweis: void csv::ofstream::escape_and_output(std::string&)
void escape_and_output(std::string & src)

...

 Es gibt viele Fehler, daher werde ich sie nicht mehr posten und Platz beanspruchen. Diese Fehler stammen alle aus demselben Funktionsheader. Der Funktionsheader ist wie folgt definiert:

 void escape_and_output(std::string & src)

Und der Aufruf sieht so aus:

ostm.escape_and_output(os_temp.str());

Offensichtlich ist der Funktionsheader beim Aufruf erforderlich. Die R-Wert-Referenz , und die durch den echten Funktionsheader angegebene L-Wert-Referenz stimmen nicht überein, sodass der Compiler einen Fehler meldet. Die Änderung ist sehr einfach, ändern Sie einfach „&“ in „&“, das heißt, ändern Sie den Funktionsheader so, dass er wie folgt aussieht:
void escape_and_output(std::string & src)
Der Fehler ist sehr offensichtlich. Ich wollte ihn zunächst nicht aufschreiben, hatte aber Angst, dass Leute, die mit c++0x nicht vertraut sind, ratlos sein würden, also habe ich ihn gepostet. Außerdem weiß ich nicht, warum das Projekt einen so offensichtlichen Fehler aufweist – vielleicht ist der Compiler des Chefs zu schlau.

Weitere verwandte Artikel finden Sie auf der chinesischen PHP-Website (m.sbmmt.com)!


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage