On Tuesday, 16 June 2015 at 21:17:37 UTC, tcak wrote:
As far as I known, when I define a string with enum and it is
used at different parts of code, that string is repeated again
and again in executable file instead of passing a pointer to
string. So, using enum with string doesn't seem like a good
idea.
String literals are merged by the compiler, much like in C and
Java.
import std.stdio;
enum mystring = "hello world!";
void main() {
string str1 = mystring;
string str2 = mystring;
writeln(str1.ptr == str2.ptr); // prints true
}