Jetzt habe ich eine Funktion, die eine Zeichenfolge zurückgeben muss. Ich sah eine bestimmte Implementierung, bei der er ein const char * von der Funktion zurückgibt.Ist es eine gute Idee, "const char *" von einer Funktion zurückzugeben?
Etwas wie folgt aus:
const char * GetSomeString()
{
........
return somestlstring.c_str();
}
SomeOtherFoo()
{
const char * tmp = GetSomeString();
string s = tmp;
}
Jetzt fühlte ich da etwas potenziell falsch mit diesem ist. Ist mein Bauchgefühl richtig? oder Ist das ein vollkommen sicherer Code?
Bitte geben Sie mir Ihre Vorschläge. Ich habe das Gefühl Rückkehr const char * auf diese Weise könnte in Chaos führen ..
Danke, Arjun
Es sei denn, somyltstring ist ein lokaler in Funktionsumfang. :-) – Konrad
@Konrad sicher, aber ich sagte auch, dass in meiner Antwort direkt nachdem ich den Code zeigte. :) –