C++11 在c++;标准::地图<;标准::字符串、类设置、结构基>;什么';是什么? C++中的语句/表达式,< /P> struct bases { int a; }; class setting { int n; }; std::map<std::string, class setting, bases> s; s["Please enter your keyword "] = // .... so on struct-base{ INTA; }; 班级设置{ int n; }; std::map s; s[“请输入您的关键字”]=/。。。。等等

C++11 在c++;标准::地图<;标准::字符串、类设置、结构基>;什么';是什么? C++中的语句/表达式,< /P> struct bases { int a; }; class setting { int n; }; std::map<std::string, class setting, bases> s; s["Please enter your keyword "] = // .... so on struct-base{ INTA; }; 班级设置{ int n; }; std::map s; s[“请输入您的关键字”]=/。。。。等等,c++11,c++14,C++11,C++14,这在最好理解的解释中意味着什么?请查看的文档。可以按以下方式声明映射: template < class Key, class T, class Compare = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T> > > class map; 模板 < 类密钥, T类, 类比较=标准::更少, 类分配器=std::分配器 > 类图; 这意味着映

这在最好理解的解释中意味着什么?

请查看的文档。可以按以下方式声明映射:

template
<
class Key,
class T,
class Compare = std::less<Key>,
class Allocator = std::allocator<std::pair<const Key, T> >
> 
class map;
模板
<
类密钥,
T类,
类比较=标准::更少,
类分配器=std::分配器
> 
类图;
这意味着映射最多可以包含4种模板类型:键、值、比较类型和分配器类型;其中最后2个是可选的

现在输入您的代码:

std::map<std::string, class setting, bases> s
std::map s

在这种情况下,
class setting
是值,
struct base
是比较类型。在简单的英语中,
s
是一个映射,它可以映射
std::string
类型和
类设置
,而
struct base
提供了一种比较字符串键对映射元素进行排序的方法。

第一行后至少缺少一个分号。即使这样,也很难说你到底想从我们这里得到什么。目前的代码仍然是无效的。类定义后缺少分号,
base
不提供比较两个
std::string
对象的调用运算符。最好让示例尽可能接近真实代码,否则代码中的错误可能导致无效答案。