vector中用迭代器访问类的成员函数的方法

遇到了问题就是我把类放在了vector中,但是用迭代器访问不了,最后解决貌似是没加括号,在这里把它记录下来

三个文件
类的头文件:commodity.h
类的源文件:commodity.cpp
测试文件:main.cpp

commodity.h

#ifndef COMMODITY_H
#define COMMODITY_H

#include <string>
#include <iostream>
using namespace std;

class Commodity
{
public:
    Commodity();
    Commodity(int prise,string name);
    void print();
private:
    double m_doPrise;
    string m_strName;
};

#endif // COMMODITY_H

commodity.cpp

#include "commodity.h"
using namespace std;
Commodity::Commodity()
{
    m_doPrise = 0;
    m_strName = "wu";
}
Commodity::Commodity(int prise, string name)
{
    m_doPrise= prise;
    m_strName = name;
}
void Commodity::print()
{
    cout<< m_doPrise << endl;
    cout<< m_strName << endl;
}

main.cpp

#include <iostream>
#include <fstream>
#include <string>
#include <assert.h>
#include <vector>
#include "commodity.h"

using namespace std;




int main()
{
    cout << "Hello World!" << endl;
    double doPrise;
    string strName;

    cout << "Please input Prise" << endl;
    cin >>doPrise;
    cout << "Please input name" << endl;
    cin >>strName;

    vector<Commodity> veCommTest;
    veCommTest.push_back(one);
    for(auto iter = veCommTest.begin();iter != veCommTest.end();iter++)
    {
        (*iter).print();
    }


    return 0;
}
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_小白鱼儿_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值