我可以将std :: vector <int> *转换为int *吗?

Godzsa

假设我有一个std::vector<int>* foo;,我必须将其用作int*(旧的C类型库PVM的(数组,而不是指向int的指针))。就我而言,这可能行得通,因为vector它们的元素像数组一样彼此相邻地存储在内存中。因此,我尝试了(int*)foo,但是以某种方式却收到了无法调试的错误,因此我认为这一定是问题所在。有任何想法,想法,优雅的解决方法吗?

走近黑暗鱼

您不能将向量直接转换为数组,因为向量对象由指向数组数据的指针组成,而不是指向动态分配的数组数据本身。要访问基础数组,请使用data()成员函数:

std::vector<int> vec;

int *arr = vec.data();

或者

std::vector<int> *vecp = new std::vector<int>;

int *arr = vecp->data();

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将vector <int>转换为int *

来自分类Dev

将vector <int>转换为定界字符串

来自分类Dev

将unsigned long long int强制转换为signed long long int可能吗?

来自分类Dev

我可以将unsigned char *强制转换为unsigned int *吗?

来自分类Dev

C:将表示数字位的int数组转换为单个Int吗?

来自分类Dev

我应该将可为null的double转换为int吗?

来自分类Dev

将vector <bool>转换为int

来自分类Dev

将int转换为System.Drawing.Brushes.SomeColor吗?

来自分类Dev

我可以在运行时将std :: vector转换为std :: tuple吗?

来自分类Dev

将String转换为int吗?

来自分类Dev

我正在尝试将int转换为BigInteger,有人可以帮助我吗?

来自分类Dev

std :: vector <int,std :: allocator <char>>有效吗?

来自分类Dev

我可以将std :: vector <int> *转换为int *吗?

来自分类Dev

将[Int?]转换为[Int]

来自分类Dev

将vector <int>强制转换为const vector <const int>

来自分类Dev

C ++:错误无法从std :: vector <int> *转换为std :: vector <std :: vector <int>>

来自分类Dev

将vector <int>转换为定界字符串

来自分类Dev

Java:将字符串递归转换为Int吗?

来自分类Dev

将vector <bool>转换为int

来自分类Dev

无法将bool testPIN的vector <int>转换为int *

来自分类Dev

我正在尝试将int转换为BigInteger,有人可以帮助我吗?

来自分类Dev

从std :: vector <int>转换为char [] C ++

来自分类Dev

将vector <int>强制转换为const vector <const int>

来自分类Dev

我们不能将int转换为boolean吗?

来自分类Dev

将vector <int>转换为vector <long>时,它们的大小是否相同?

来自分类Dev

如何正确地将 vector<int> 转换为 void* 并返回到 vector<int>?

来自分类Dev

消除“转换为 std::vector<int>::size_type 为 int”警告

来自分类Dev

ValueError: 基数为 10 的 int() 的无效文字:'' 我不能将 int 转换为 None 吗?

来自分类Dev

我可以在 C++ 中使用像 ** vector < pair <int ,vector < int >> > vec** 这样的声明吗?

Related 相关文章

  1. 1

    如何将vector <int>转换为int *

  2. 2

    将vector <int>转换为定界字符串

  3. 3

    将unsigned long long int强制转换为signed long long int可能吗?

  4. 4

    我可以将unsigned char *强制转换为unsigned int *吗?

  5. 5

    C:将表示数字位的int数组转换为单个Int吗?

  6. 6

    我应该将可为null的double转换为int吗?

  7. 7

    将vector <bool>转换为int

  8. 8

    将int转换为System.Drawing.Brushes.SomeColor吗?

  9. 9

    我可以在运行时将std :: vector转换为std :: tuple吗?

  10. 10

    将String转换为int吗?

  11. 11

    我正在尝试将int转换为BigInteger,有人可以帮助我吗?

  12. 12

    std :: vector <int,std :: allocator <char>>有效吗?

  13. 13

    我可以将std :: vector <int> *转换为int *吗?

  14. 14

    将[Int?]转换为[Int]

  15. 15

    将vector <int>强制转换为const vector <const int>

  16. 16

    C ++:错误无法从std :: vector <int> *转换为std :: vector <std :: vector <int>>

  17. 17

    将vector <int>转换为定界字符串

  18. 18

    Java:将字符串递归转换为Int吗?

  19. 19

    将vector <bool>转换为int

  20. 20

    无法将bool testPIN的vector <int>转换为int *

  21. 21

    我正在尝试将int转换为BigInteger,有人可以帮助我吗?

  22. 22

    从std :: vector <int>转换为char [] C ++

  23. 23

    将vector <int>强制转换为const vector <const int>

  24. 24

    我们不能将int转换为boolean吗?

  25. 25

    将vector <int>转换为vector <long>时,它们的大小是否相同?

  26. 26

    如何正确地将 vector<int> 转换为 void* 并返回到 vector<int>?

  27. 27

    消除“转换为 std::vector<int>::size_type 为 int”警告

  28. 28

    ValueError: 基数为 10 的 int() 的无效文字:'' 我不能将 int 转换为 None 吗?

  29. 29

    我可以在 C++ 中使用像 ** vector < pair <int ,vector < int >> > vec** 这样的声明吗?

热门标签

归档