阅读量:3
是的,C++的Map容器可以存储自定义类型。要在Map容器中存储自定义类型,需要定义一个比较函数或者重载<运算符,以便Map容器可以正确比较和排序自定义类型的对象。例如:
#include
#include
class MyType {
public:
int value;
MyType(int val) : value(val) {}
bool operator<(const MyType& other) const {
return value < other.value;
}
};
int main() {
std::mapint> myMap;
myMap[MyType(1)] = 10;
myMap[MyType(2)] = 20;
for (auto& pair : myMap) {
std::cout << "Key: " << pair.first.value << ", Value: " << pair.second << std::endl;
}
return 0;
}
在上面的例子中,我们定义了一个名为MyType的自定义类型,并在Map容器中存储了这个自定义类型的对象作为键,以及与之关联的整数值作为值。我们重载了<运算符,以便Map容器可以正确比较MyType对象。
以上就是关于“C++ Map容器能否存储自定义类型”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm