#include<iostream>
#include<vector>
using namespace std;
class t{
public:
t();
void updateSize();
int getSize();
void insert();
int get(int a);
private:
int size;
vector<int> v;
};
t::t(){
size =0;
}
void t::updateSize(){
size++;
}
int t::getSize(){
return size;
}
int t::get(int a){
return v[a];
}
void t::insert(){
v.push_back(size);
++size;
}
int main(){
t xa;
xa.insert();
xa.insert();
xa.insert();
xa.insert();
cout<<xa.get(3);//expect to output 3 but instead outputs 0
return 0;
}
このコードは、insertを呼び出すたびにサイズをインクリメントし、そのサイズの値を持つ整数を、そのサイズの同じインデックスのベクトルに入れることになっています。しかし、何らかの理由で、更新されたサイズが私のベクトルに入れられません。