调整 2D 变量 C++ 的大小
Resize 2d variable c++
我正在使用C++ CURL库发送电子邮件。
我的问题是我电子邮件中的文本可能会不时变化,所以我需要更改大小或动态重新分配我的变量:
const char *payload_text[10]
其中 10 可能是 20 甚至 30 如何在程序中更改此变量的大小?
顺便说一下,这个变量必须分配,因为我正在使用CURL库中的示例: https://curl.haxx.se/libcurl/c/smtp-mail.html
每当您面对可能需要更改大小的数据结构时,您都应该考虑std::vector
.
在这种特定情况下,std::vector<std::string>>
是您想要/需要的。
要将向量传递给需要 C 样式数组和大小的传统 API,请将其传递std::vector::data()
并std::vector::size()
。向量保证使用连续内存,就像 C 样式数组一样,因此两者可以很好地互操作。
谢谢 它实际上只适用于具有相同问题的其他人的一些要点: 在函数payload_source
更改行:
data = payload_text.at(upload_ctx->lines_read)
我害怕做什么,并在您将填充电子邮件数组的代码正文中执行以下操作:
payload_text.push_back(char_array)
向量本身应该是:
vector <const char*> payload_text
再次非常感谢大家
相关文章:
- 2D数组来自文本输入,中间有空格
- 将值指定给向量(2D)的向量中的某个位置
- 如何使用用户输入在C++中正确填充2D数组
- 如何在C++中检查2D数组中负值的输入验证
- 当我在main中声明了我的2d数组时,为什么我的程序会退出
- 在 2D 向量中使用第三个 [ ] 有什么意义?
- 四边形的 2D 旋转
- 打印第二列时的2d字符矢量打印空间
- 如何将以逗号和空格分隔的整数读取到 2D 数组中?
- 如何在C++函数中声明静态 2D 数组?
- 我是 C++ 的初学者,我想知道如何在 2D 矢量中获取重复值
- 如何声明一个可以在整个程序中使用的全局 2d 3d 4d .. 数组(堆版本)变量?
- opengl glBegin(GL_LINES) 和 glBegin(GL_POINT) 在 2D 中不可视化点矢量
- 在C++中迭代 2D 容器的最干净方法
- 如何引用 2D 指针?
- 如何在 C++ 中使用它的构造函数初始化 unique_ptrs 的 2D 向量?
- C++动态安全 2D 交错阵列
- 如何在C++或OpenCV子矩阵中的2D子向量上使用OpenACC?
- 我已经阅读了很多关于 2d 数组的信息,但我在作业中使用它时遇到了麻烦
- 将 2D 推力::d evice_vector 复矩阵传递给 CUDA 内核函数