为什么我无法访问矢量车
why can not I access the vector cars?
#include <iostream>
#include <vector>
using namespace std;
struct multa{
int data;
};
struct veiculos{
string placa;
vector<multa*> multas;
};
int tam = 0;
vector<veiculos*> carros;
void insereVeiculos(){
veiculos *carrosparaadd = new veiculos;
cout << "digite a placa do veiculo:" << endl;
cin >> carrosparaadd->placa;
carros.push_back(carrosparaadd);
cout << carros[].placa;
tam++;
}
void inseremultas(){
int cont = 0 ,i = 0;
cout << "Quantas multas você quer adicionar?" << endl;
cin >> cont;
for(i=0;i<cont;i++){
multa *multasparaadd = new multa;
cout << "Digite a data da multa para add:" << endl;
cin >> (*multasparaadd).data;
cout << (*multasparaadd).data;
carros[0]->multas.push_back(multasparaadd);
}
}
为什么我无法访问矢量车?与卡罗斯[0].普拉卡?我测试了它,发现它从键盘上获得了正确的值谢谢。
你的表达
cout << carros[].placa;
缺少数组访问的索引,并且由于它是指针向量,因此您还需要取消引用访问的元素。编译的正确表达式是例如:
cout << carros[0]->placa;
如果要打印刚刚插入的元素,可以使用以下任一方法:
cout << carros.back()->placa;
或者,由于您要插入指针,只需:
cout << carrosparaadd->placa;
相关文章:
- 为什么示例代码访问IUnknown中已删除的内存
- 为什么此派生对象无法访问基类的后递减方法?
- 为什么我的好友类无法访问私人会员?
- 为什么 std::itrator 无法访问该函数
- 为什么 vector 的随机访问迭代器给出与指针不同的内存地址?
- C++:为什么无法在派生类中访问受保护的构造函数?
- 为什么即使我声明了朋友类,我也会收到错误"无法访问类中声明的私人成员"
- 为什么 Windows 拒绝访问某些进程的名称?
- 为什么我在空指针错误(链表)中获取成员访问权限
- 为什么在访问 vtkRenderWindow 的"交互器"变量时会发生段错误?
- 为什么我无法访问指向数组中成员函数的指针?
- 当键值是 std 向量时,为什么使用 at in C++ 访问映射值如此缓慢?
- 为什么我的 setter 方法会产生错误的访问错误
- 为什么没有访问所有字符串字符?
- 为什么我可以访问其他班级的私人成员?
- 为什么继承的结构成员在联合中无法访问?
- 为什么在PIMPL中无法访问实现类的常量函数?
- 为什么"delete"操作员给我访问权限冲突
- 为什么 C++ 地址中的矢量无法通过原始指针访问
- 函数指针和访问-为什么这个代码是合法的