在编译期间编写一个字符串数组

时间:2017-12-26 22:28:17

标签: c++

如果数组的每个元素都在不同的文件中,有没有办法在编译期间创建字符串的数组(或向量,列表,w / e)?

示例:我有类my_string。我在两个不同的类中实例化它。最后我有一个包含两个my_string对象的数组。这两个类获取指向数组中对象的指针/引用。重要的是整个事情应该在编译期间发生,而不是运行时或初始化。

file1.cpp:

MyString str1("Hello");

file2.cpp:

MyString str2("World");

file3.cpp看起来像这样:

const char* strings[] = {"Hello", "World"};

str1& str2包含file3cpp中的strings对象的指针/ ref / index。

1 个答案:

答案 0 :(得分:1)

你可以有一个在编译时汇编的指针数组:

file1.cpp:

char const * str_f1 = "hello";

file2.cpp:

char const * str_file2 = "world";

file3.cpp"

extern char const * str_file1, * str_file2;
char const * strs[] { str_file1, str_file2 };