Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [C++] UnicodeString <-> const char * (https://www.delphipraxis.net/148474-%5Bc-%5D-unicodestring-const-char-%2A.html)

freak4fun 2. Mär 2010 21:18


[C++] UnicodeString <-> const char *
 
Hi Leute,
ich hab mit C++ keine Erfahrung, aber folgendes Problem.
Ich habe einen Konstruktor der folgende Überladungen hat:
Code:
TiXmlDocument( const char * documentName );
TiXmlDocument( const std::string& documentName );
Und nun will ich den aufrufen:
Code:
void __fastcall openXMLFile(String fileName)
{
  TiXmlDocument doc(fileName);
  doc.LoadFile();
  ...
Aber ich bekomme die Fehlermeldung:
Zitat:

Keine Übereinstimmung für 'TiXmlDocument::TiXmlDocument(UnicodeString)' gefunden
uXMLFormatter.cpp(26): Analyse: void _fastcall openXMLFile(UnicodeString)
Wie bekomme ich das nun hin? :gruebel:

Wannebee 3. Mär 2010 21:48

Re: [C++] UnicodeString <-> const char *
 
Hallo,

du versuchst der überladenen Funktion einen Typen zu übergeben, den diese nicht kennt. Und zwar passiert der Fehler wahrscheinlich hier

void __fastcall openXMLFile(String fileName)

Ich glaube, dass String nicht im Namespace std ist. Versuche dort ebenfalls std::string

Ich hoffe, ich irre mich nicht. Ist alles schon so lange her :)

lg
Wannebee

freak4fun 4. Mär 2010 00:00

Re: [C++] UnicodeString <-> const char *
 
Ich habe das drin:
Code:
using namespace std;
und die Funktion hat nun diesen Kopf:
Code:
void __fastcall openXMLFile(string fileName)
Nun kracht es breits beim Aufruf:
Code:
openXMLFile(Path_Edt->Text);
Zitat:

[BCC32 Fehler] uXMLFormatter.cpp(48): E2034 Konvertierung von 'UnicodeString' nach 'string' nicht möglich
Vollständiger Parser-Kontext
uXMLFormatter.cpp(44): Analyse: void _fastcall TForm1::Button2Click(TObject *)
Oder:
Code:
openXMLFile(Path_Edt->Text.c_str());
Zitat:

[BCC32 Fehler] uXMLFormatter.cpp(48): E2034 Konvertierung von 'wchar_t *' nach 'string' nicht möglich
Vollständiger Parser-Kontext
uXMLFormatter.cpp(44): Analyse: void _fastcall TForm1::Button2Click(TObject *)
TiniXML verlang aber const char *. :(

Wannebee 4. Mär 2010 20:43

Re: [C++] UnicodeString <-> const char *
 
http://www.c-plusplus.de/forum/viewt...9.html#1864119

? Geht das? Was man nicht alles findet^^ Da wirst du doch eher antwort bekommen als hier im Delphi-Forum :)

lg
Wannebee

freak4fun 5. Mär 2010 13:54

Re: [C++] UnicodeString <-> const char *
 
Ja, done. :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:22 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz