如何显示存储在 Multimap 中的类数据成员
how to display class data members stored in multimap
>这里是代码
class student
{
int num;
string name;
float marks;
public:
void add()
{
cout << "Enter the num name and marks:" << endl;
cin >> num >> name >> marks;
}
void display()
{
cout << num << endl;
cout << name << endl;
cout << marks << endl;
}
};
void main()
{
student ss;
multimap<int,student> st;
multimap<int,student>::iterator itr;
ss.add();
st.insert(make_pair(1000, ss));
for (itr = st.begin(); itr != st.end(); itr++)
{
cout << itr->second; // its showing ERROR
}
}
错误是错误 C2679 二进制"<<":未找到采用类型为"student"的右侧操作数的运算符(或没有可接受的转换)firstmultimap
如何解决这个问题
要显示学生对象,您需要重载运算符<<
。
我已经使运算符重载函数成为student
类的朋友,因此可以在不创建对象的情况下调用它。
另外,请在 MSDN 上查看此示例。
例:
#include<iostream>
#include<map>
#include<string>
using namespace std;
class student
{
private:
int num;
string name;
float marks;
public:
void add()
{
cout << "Enter the num name and marks:" << endl;
cin >> num >> name >> marks;
}
void display()
{
cout << num << endl;
cout << name << endl;
cout << marks << endl;
}
friend ostream &operator << (ostream &output, const student &s)
{
output << "Num: " << s.num << "nName: " << s.name << "nMarks: " << s.marks << endl;
return output;
}
};
int main()
{
student ss;
multimap<int, student> st;
multimap<int, student>::iterator itr;
ss.add();
st.insert(make_pair(1000, ss));
for (itr = st.begin(); itr != st.end(); itr++)
{
cout << itr->second;
}
// Using Range based for loop
// for(const auto &i : st)
// cout << i.second;
return 0;
}
相关文章:
- 用于访问容器<T>数据成员的正确 API
- 静态数据成员的问题-修复链接错误会导致编译器错误
- 数据成员SFINAE的C++17测试:gcc vs clang
- 派生类是否可以在抽象工厂设计模式中具有数据成员
- 如何在c++中定义以struct为数据成员的类中的构造函数
- 静态数据成员模板专用化的实例化点在哪里
- int数据类型的指针指向的是什么,如果是一个类的私有数据成员,我们创建了该类的两个对象?
- 使用指针访问数组中的对象数据成员
- 友元函数无法访问私有数据成员 (c++)
- 我可以在 C++ 中将数据成员/变量从其定义之外添加到结构中吗?
- 为什么将一个结构的引用设置为等于另一个结构只会更改一个数据成员?
- 将私有数据成员添加到野牛生成的类中
- 输入数据成员未按要求工作
- 二维矢量数据成员
- 在类 A 中创建类型为 B 类的向量 - 访问数据 [C++] [成员在两个类中都是私有的]
- 调用在 HXX 文件中声明的静态数据成员
- 是否可以根据其数据成员的类型确定类型的大小
- 访问数据成员(本身是对象)的数据成员,就好像它们是类成员一样
- 使公共数据成员在C++中无法访问
- 如何显示存储在 Multimap 中的类数据成员