我有一个像这样初始化的常量std::map< int, std::string>:
const std::map< int, std::string > firstMap = {
{ 1, "First" },
{ 2, "Second"}
};
然后我想创建另一个 const std::map,它使用第一个映射作为其初始值的一部分,并扩展原始数据。所以我猜它应该是类似于这样:
const std::map< int, std::string > secondMap = {
{ <firstMap>},
{ 3, "Third"}
};
那么第二个映射表将会有三对对应关系。这种情况是否可能呢?
编辑:而且这些映射表是以 extern 声明的。
constexpr
,因为std::map
目前还不支持。是的,初始化将在运行时发生,就像正常的初始化程序被评估一样。 - Rakete1111