C++11 constexpr und string literals

h^2

hat ne Keule +1
Folgender Code ist natürlich in C++ legal:
Code:
const char* foobar0 = "FOO" "BAR";
Warum ist es folgender nicht:
Code:
constexpr const char * foo() { return "FOO"; }
constexpr const char * bar() { return "BAR"; }
const char* foobar1 = foo() bar();
Ist doch alles zu Compile-Zeit bekannt, es sollte quasi identisch sein :confused:
 
Na, weil es keinen Operator char* nichts char* gibt. Das mit dem Zusammenfügen von Strings ist bloß ein syntaktischer Trick der das Zusammenfrickeln von Strings mit dem Präprozessor erleichtert.
 
Back
Top