【问题标题】:Set items in the array设置数组中的项目
【发布时间】:2016-10-24 00:35:13
【问题描述】:

我该怎么做

  • myvecC 在数组中设置为-9 4 次。

  • myvecD 为数组设置“妈妈”7 次。

然后能够改变数组中的每一项。我不知道如何制作,以便我可以在数组中设置我的新项目

 int main()
{   
vector<int> myvecA;
vector<int> myvecB(10);
vector<int> myvecC(4,-9);
vector<string> myvecD(7, "MOM!");

cout << "Vector A size: " << myvecA.size() << endl;
cout << "Vector B size: " << myvecB.size() << endl;
cout << "Vector C size: " << myvecC.size() << endl;
cout << "Vector D size: " << myvecD.size() << endl;

cout << "Vector A capacity: " << myvecA.capacity() << endl;
cout << "Vector B capacity: " << myvecB.capacity() << endl;
cout << "Vector C capacity: " << myvecC.capacity() << endl;
cout << "Vector D capacity: " << myvecD.capacity() << endl;

cout << endl;
cout << "Vector B: " << endl;
myvecB[3] = 43;
myvecB[7] = 17;
for (int i = 0; i<myvecB.size(); i++)
    cout << myvecB[i] << endl;

cout << endl;
cout << "Vector C: " << endl;
myvecC[2] = 50;
for (int i = 0; i<myvecC.size(); i++)
    cout << myvecC[i] << endl;

cout << endl;
cout << "Vector D: " << endl;
myvecD[6] = "Shut up kids.";
for (int i = 0; i<myvecD.size(); i++)
    cout << myvecD[i] << endl;

模板.h

 template <class V>
 class vector {
 public:
 vector() : sizearr(0) {}
 vector(int x) : sizearr(x) {}
 vector(int x, const V &v) : sizearr(x) {}

int size();
int capacity();
private:
int sizearr;
int sizecap;
};

template <class V>
 int vector<V>::size() {
 return sizearr;
}

template<class V>
 inline int vector<V>::capacity()
{
 sizecap = sizearr * 2;
 return sizecap;
}

【问题讨论】:

    标签: c++ arrays templates header


    【解决方案1】:

    您可以让一个参数为您执行此操作,但您需要在私有类变量中使用一个数组,可能是 Type list* 或您想要调用的任何名称。 似乎矢量类对象中的第一个参数指示了矢量的大小,而第二个参数指示了需要插入的内容。 我的建议:

    'a' 是数组的容量, 'Type V' 是插入到列表数组中的内容, 0 和 NULL 用于没有任何参数的对象

    vector(int a = 0 ,Type V = NULL) //This constructor can serve as your default constructor too
    {
      sizearr = a;
      sizecap = a;
      list = new Type[sizecap];
    
      for(int i=0;i<sizecap;i++)
      {
        list[i] = b;
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-09
      • 1970-01-01
      • 2016-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多