Hallo,
Ich habe zwei Fragen. Probleme sind es nicht, denn lösen kann ich sie von einem gewissen standpunkt aus.
1. Typenumwandlung
Es gibt ja mehre Möglichkeiten, in C++ eine Typenumwandlung vorzunehmen, gerade bei String-Objekten.
Ich habe mir zwei kleine Funktionen geschrieben:
Macht dieses Vorgehen Sinn?
2. API Calls die LPCSTRs erwarten:
Stringobjekte und stringstream objekte sind anscheinend nicht mit LPCStr Parametern verträglich. Um eine msgbox auszugeben, die eine Variable als Text hat, muss ich also folgendermassen vorghen:
Ist das der "Way-to-Go" oder macht man das eleganter?
Mein Code funktioniert soweit, aber evtl ist es ja viel zu kompliziert...
Danke für etwaige Erklährungsversuche
Ich habe zwei Fragen. Probleme sind es nicht, denn lösen kann ich sie von einem gewissen standpunkt aus.
1. Typenumwandlung
Es gibt ja mehre Möglichkeiten, in C++ eine Typenumwandlung vorzunehmen, gerade bei String-Objekten.
Ich habe mir zwei kleine Funktionen geschrieben:
Code:
// Convert Int to string
std::string intstr(int i)
{
std::stringstream sstr;
sstr << i;
std::string myString = sstr.str();
return myString;
}
// Convert String to int
int strint(std::string str)
{
int i;
std::stringstream sstr(str);
sstr >> i;
return i;
}
Macht dieses Vorgehen Sinn?
2. API Calls die LPCSTRs erwarten:
Stringobjekte und stringstream objekte sind anscheinend nicht mit LPCStr Parametern verträglich. Um eine msgbox auszugeben, die eine Variable als Text hat, muss ich also folgendermassen vorghen:
Code:
std::string str;
LPCSTR LPstr_msg;
for(int i=0;i<20;i=i+1)
{
//graphics.DrawLine(&pen, 10 + (i * 10), 10, 200, 100);
str = intstr(i);
/* convert string to LPSTR */
LPstr_msg = str.c_str();
/* show msgbox */
MessageBox(
NULL,
LPstr_msg,
"DebugBox",
MB_OK
);
}
Ist das der "Way-to-Go" oder macht man das eleganter?
Mein Code funktioniert soweit, aber evtl ist es ja viel zu kompliziert...
Danke für etwaige Erklährungsversuche