c++ - 使用指针访问 struct c++ 向量中的元素
问题描述
嗨,我是 C++ 新手,想问一个关于如何使用指针访问向量内的结构元素的问题。假设我有一个结构:
struct pets{ //struct of pets
string name;
int age;
}
int main() {
pets a = {bolt, 2};
pets b = {crash, 3};
vector<pets> x;
x.push_back(a);
x.push_back(b);
vector<person> *ptr = &x;
???
}
使用指向向量 x 的指针 ptr 我如何能够访问存储在我的宠物向量中的第一个元素的第一个年龄?我知道它更容易使用
x[0].age
但我想使用指向结构向量的指针来访问元素成员。任何人都可以帮忙吗?
解决方案
您需要先取消引用它:
ptr[0][0].age;
// ^^^ make sure you don't use >0 for the first one
或者
(*ptr)[0].age;
住在神螺栓上。
推荐阅读
- r - 在 R 中合并两个形状文件(空间多边形和空间点)时出错
- python - 如何处理订单迁移文件?
- java - 如果优先级队列是最小堆的实现,那么优先级队列如何始终产生相同的结果
- android - 如何将资产文件夹中的 docx 文件存储到 android 设备上的设备公共目录,例如“下载”
- javascript - 在第二个选择框中禁用第一个选择框的选定选项
- nginx - nginx websocket握手错误400使用AWS ELB
- javascript - 基于旧版本代码开发npm包
- spring-boot - 停止使用 Stream 侦听器的消息
- web-scraping - BeautifulSoup 在使用 .find 方法时找不到所有标签?
- javascript - AJAX 表单提交不重新加载内容