我对cpp很陌生。我在以下代码中遇到问题。
我希望当我从 main 一次又一次地调用 checkyo() 时, id 的值应该会增加。但是,它保持不变。
**如果输入
检查是 = 1
检查是 = 1
检查是 = 1
检查是 = 1
检查是 = 1
按任意键继续 。. .**
但是,我希望输出是
**如果输入
检查是 = 1
检查是 = 2
检查是 = 3
检查是 = 4
检查是 = 5
请指出我的错误?
#include<iostream>
#include<vector>
int count1;
using namespace std;
class A{
int id;
public:
A(){
id=0;
}
void check()
{
++id;
cout<<"check is = " << id << endl;
}
};
class B{
vector<A> v;
public:
void checkyo()
{
if(count1==1)
{
cout<< "Entered if \n" ;
A a;
v.push_back(a);
}
A temp = v.back();
temp.check();
}
};
int main()
{
B b;
count1 =1;
b.checkyo();
count1++;
b.checkyo();
b.checkyo();
b.checkyo();
b.checkyo();
system("pause");
return 0;
}