我有一個 float* 變數。我想將 float* 中的值復制到 vector 。你能建議在 C 上最快的方法嗎?這是我的基線代碼
std::vector<float> CopyFloat2Vector(float* input, int size1) {
std::vector<float> vector_out;
for (int i = 0; i < size1; i ) {
vector_out.push_back(input[size1 i]);
}
return vector_out;
}
我也試過 memcopy 但它不起作用
float* input =....; //I have some value store in input with size of 1xsize1
std::vector<float> vector_out;
memcpy(vector_out.data(), input, size1 * sizeof(float));
uj5u.com熱心網友回復:
std::vector有一個建構式。我假設標準庫實作將盡可能多地利用優化:
std::vector<float> CopyFloat2Vector(float* input, int size1) {
return {input, input size1};
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/460439.html
