为什么c++地址中的向量不能通过原始指针访问

黑客萨克

当我每次写作时都使用矢量时

    vector<int>::iterator itr;

但是当我想用原始指针访问地址时

 int *ptr=v.begin();

如果我想用迭代器和原始指针变量打印地址,它不会打印任何内容并显示错误,它不会打印任何地址但如果我们想像这样使用 v[i] 访问它工作正常我的问题是为什么这个原始指针不持有这个容器初学者地址

泰德·林格莫

据我了解,您想要一个指向向量中第一个元素的指针:

vector<int>::iterator itr = v.begin();
// if(itr != v.end()) // should be involved
int* ptr = &*itr;

要么:

// if(v.size()) // should be involved
int* ptr = &v[0]; // all C++ versions
int* ptr = v.data(); // C++11 and later

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么不能通过传入指针来创建整数?

为什么不能通过指针将C ++ 11强类型枚举转换为基础类型?

为什么不能通过泛型类型访问成员?

为什么我们不能通过.net中的对象访问静态方法

在AngularJS中,为什么不能通过简单函数访问$ scope变量?

为什么我不能通过此功能?C ++

为什么我不能通过指针从数组中删除非第一元素

为什么不能通过这样的参数?

为什么我不能通过 Vue.js 访问我的对象中动态插入的属性?

为什么不能通过传递临时输入迭代器来构造向量?

为什么在使用指针时不能通过使用“++”来增加 int 变量的值?

为什么我不能通过内部类引用访问外部类数据成员?

为什么我不能通过这种形式访问我的servlet?

为什么连接到网桥的物理接口在我的情况下不能通过Internet访问?

为什么我不能通过multer访问req.body?

为什么动态创建的html元素的标题不能通过“ .title”访问?

为什么不能通过唯一键访问Java ArrayList?

为什么我不能通过其IP访问Kubernetes服务?

为什么我不能通过 javascript 访问这个 cookie?

为什么我不能通过Docker访问NiFi流的开放HTTP端口?

为什么不能通过全局声明对象来从xml文件访问组件?

为什么我不能通过静态IP设置Ubuntu Server 14.04访问互联网?

为什么我不能通过脚本访问HingeJoint2D?

为什么我不能通过 lambda 表达式参数访问模型的属性?

为什么我不能通过友元函数访问类的私有值?

为什么通过访问指针使程序崩溃?在 C

为什么在C ++中以bool类型打印函数指针地址?

为什么const指针的向量在c ++ 17中起作用

为什么不能p = itv?(C ++中的向量问题)