你不能转换数组; 但是,您可以使用转换后的值创建一个新数组:
#include <iterator>
#include <algorithm>
short src[10] = ...;
double dst[sizeof(src)/sizeof(short)];
std::copy(std::begin(src), std::end(src), dst); // generic, C++11
std::copy(src, src + 10, dst); // a bit more hackish
Run Code Online (Sandbox Code Playgroud)
更好的是使用std::array<float, 10> src;等
如果您的"数组"实际上是动态数据结构,它会变得更加容易:
std::vector<float> src = ... ;
std::vector<double> dst(src.begin(), src.end());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2279 次 |
| 最近记录: |