+ -
当前位置:首页 → 问答吧 → 如何用vector给二维数组赋值?类成员能否像结构体那样用数组来表示?

如何用vector给二维数组赋值?类成员能否像结构体那样用数组来表示?

时间:2011-12-04

来源:互联网

1.
#include <iostream>
#include <string>
#include <vector>
using std::endl;
using std::cin;
using std::cout;
using std::string;
using std::vector;

class churu
{
public:
  void shuru();
  void shuchu();
private:
  int ke,i;
  string name;
  string ming;
  vector<string> kemu;
};
void churu::shuru()
{
  cout<<"请输入学生的名字:";
  cin>>name;
  cout<<"请输入科目的数量:";
  cin>>ke;
  for(i=0; i<ke; i++) {
  cout<<"请输入第"<<i+1<<"个科目的名称:";
  cin>>ming;
  kemu.push_back(ming);//如果这里是二维数组该怎么赋值?
  }
}
void churu::shuchu()
{
  cout<<name<<" ";
  for(i=0; i<ke; i++) {
  cout<<kemu[i]<<" ";
  }
}
int main()
{
  churu d;
  d.shuru();
  d.shuchu();
  retrun 0;
}

如果在kemu.push_back(ming);处要赋值的是二维数组,那该怎么改?

2.
结构体中有这样一种情况:
void input (student s[],int n)
{
  int i;
  for(i=0;i<n;i++)
  {
  cin>>s[i].num;
  cin.getline(s[i].name,20);
  cin>>s[i].score[0]>>s[i].score[1];
  }
}
我想在类中也用一个数组实现像s[]那样的功能,该怎么实现呢?

作者: QIYWTC   发布时间: 2011-12-04

vector< vector<T> >这就是2纬数组的形式

作者: qscool1987   发布时间: 2011-12-04