c++ - c++ float* 数组作为对 std::vector 的引用
问题描述
我想创建std::vector<float> vpd
一个引用float*
.
float * old = new float[6];
for (int i = 0; i < 6; i++)
{
old[i] = i;
}
vector<float> vpd(6);
auto refasd = &*vpd.begin();
*refasd = *old;
vpd[0] = 23;
cout << old[0] << endl;
23
如果我想从中获取,我应该如何修改代码cout
?
解决方案
作为替代方案,您可以使用std::span
(C++20)
float* old = new float[6];
std::iota(old, old + 6, 0);
std::span<float> vpd(old, 6);
vpd[0] = 23;
std::cout << old[0] << std::endl;
delete[] old;
推荐阅读
- openstreetmap - 如何将 tileserver-gl 与免费地图一起使用?
- vba - 在 Excel VBA 中运行 Curl 命令
- android - 如何在 Android 中检查 Retrofit API 调用是否成功
- javascript - Javascript日期表现奇怪
- python - Python 数据比较
- ignite - 点燃计算网格作业坐标/调用
- javascript - Mongoose .find() 在没有匹配结果时返回 200 响应和空数组
- angularjs - 未创建角度降级组件
- javascript - 如何获取html文件中单词的坐标
- excel - Excel 折线图填充信息直到今天()?