C++ 在c+中创建字符串的枚举/结构+;
下午好 < >我正在寻找一种方法来实例化并定义C++中的一组不同的字符串变量,并将它们分组为一个数据结构,非常像枚举数据类型,但具有字符串。 <> P>在C++中有一个很好的方法来做这件事,我不是在寻找创建一个字符串数组,而是希望每个都有一个单独的名字,以及一个父数据结构。 这就是我正在努力实现的目标C++ 在c+中创建字符串的枚举/结构+;,c++,string,struct,enums,C++,String,Struct,Enums,下午好 < >我正在寻找一种方法来实例化并定义C++中的一组不同的字符串变量,并将它们分组为一个数据结构,非常像枚举数据类型,但具有字符串。 P>在C++中有一个很好的方法来做这件事,我不是在寻找创建一个字符串数组,而是希望每个都有一个单独的名字,以及一个父数据结构。 这就是我正在努力实现的目标 somestructuretype MyData { string alpha = "this is string A"; string bravo = "this is string
somestructuretype MyData {
string alpha = "this is string A";
string bravo = "this is string B";
string charlie = "this is string C";
};
所以我可以这样调用这些字符串:
字符串temp=MyData.alpha
我知道这在c中是可能的,这在c中是可能的吗++
谢谢,
-只需初始化构造函数中的值
somestructuretype{
string alpha, bravo, charlie;
somestructuretype(){
alpha = "this is string A";
bravo = "this is string B";
charlie = "this is string C";
};
};
但是请注意,在使用它们之前,您必须创建一个
somestructuretype
对象。如果您不希望这样,请将它们声明为静态只需初始化构造函数中的值即可
somestructuretype{
string alpha, bravo, charlie;
somestructuretype(){
alpha = "this is string A";
bravo = "this is string B";
charlie = "this is string C";
};
};
但是请注意,在使用它们之前,您必须创建一个somestructuretype
对象。如果您不希望这样,请将它们声明为静态
我相信您正在寻找的是一种组织一组相关字符串的方法。您可以考虑使用命名空间,而不是寻找数据结构。
例如:
namespace MyData {
static const string alpha = "this is string A";
static const string bravo = "this is string B";
static const string charlie = "this is string C";
};
您可以通过以下方式访问它:
string temp = MyData::alpha;
我相信你想要的是一种组织一组相关字符串的方法。您可以考虑使用命名空间,而不是寻找数据结构。
例如:
namespace MyData {
static const string alpha = "this is string A";
static const string bravo = "this is string B";
static const string charlie = "this is string C";
};
您可以通过以下方式访问它:
string temp = MyData::alpha;
是否需要将它们一起传递(例如,如果您计划为其字段传递多个具有不同值的类似结构)?是否需要将它们一起传递(例如,如果您计划为其字段传递多个具有不同值的类似结构)?+1值得注意的是,当字符串将在单个翻译单元中使用时,所示的静态
方法非常有用,但是如果您希望它们跨多个稍后链接的翻译单元使用,则需要在标题中使用非静态
声明,而不使用构造函数值,还有一个单独的实现文件,用变量的值定义变量…+1值得注意的是,当字符串用于单个翻译单元时,所示的静态
方法非常有用,但如果您希望在多个翻译单元中使用它们,稍后将链接这些转换单元,您希望在头中有一个非
静态
声明,其中不包含构造函数值,还需要一个单独的实现文件,用它们的值定义变量。。。。