在C++中,可以将key作为类插入到map STL(标准模板库)中,具体步骤如下:
MyKey
的类。class MyKey {
private:
int keyData;
public:
MyKey(int data) : keyData(data) {}
bool operator<(const MyKey& other) const {
return keyData < other.keyData;
}
};
在上述代码中,MyKey
类包含一个私有成员变量keyData
,表示key的数据。我们通过构造函数初始化该成员变量,并重载了小于运算符<
,以便在map中进行比较和排序。
MyKey
类的对象作为key插入到map中。#include <iostream>
#include <map>
int main() {
std::map<MyKey, std::string> myMap;
MyKey key1(1);
myMap[key1] = "Value 1";
MyKey key2(2);
myMap[key2] = "Value 2";
// 可以继续插入更多的键值对
// 遍历map并输出键值对
for (const auto& pair : myMap) {
std::cout << "Key: " << pair.first.keyData << ", Value: " << pair.second << std::endl;
}
return 0;
}
在上述代码中,我们创建了一个std::map
对象myMap
,其中的key是MyKey
类的对象,值是std::string
类型。然后,我们创建了两个MyKey
对象key1
和key2
,并将它们作为key插入到map中。可以根据需要继续插入更多的键值对。最后,我们使用范围-based for循环遍历map,并输出每个键值对的key和value。
这样,我们就成功地将key作为类插入到map STL中了。
关于map STL的更多信息,你可以参考腾讯云的C++ STL文档:C++ STL map。
领取专属 10元无门槛券
手把手带您无忧上云