现在有这样一个问题:首先要用
float *tmp_data;
获取数据的地址。然后要传递给
std::vector<float> data;
假设tmp_dta已经获取成功,现在如何把它的值传递给data?能否讲一下背后指针,地址的传递过程,刚学c++不是很清楚,谢谢!
业精于勤,荒于嬉;行成于思,毁于随。
float temp = 10;//這個是已經在堆疊上分配了記憶體的資料std::vector data;//定義了一個盛放float資料內省的vector
float* tmp_data = &temp;//使用&運算子取得temp的位址
data.push_back(temp_data);//使用反過來從地址獲取數據,//*temp_data會產生一個臨時變量,例如叫data_,類型是float/ /data.push_back(*temp_data)會變成data.push_back(data_)
總結:& 從一個資料取得其位址
從一個位址取得其資料
data.push_back(*tmp_data);
float temp = 10;//這個是已經在堆疊上分配了記憶體的資料 data;//定義了一個盛放float資料內省的vector
std::vector
float* tmp_data = &temp;//使用&運算子取得temp的位址
data.push_back(temp_data);//使用反過來從地址獲取數據,
//*temp_data會產生一個臨時變量,例如叫data_,類型是float
/ /data.push_back(*temp_data)會變成data.push_back(data_)
總結:
& 從一個資料取得其位址
從一個位址取得其資料
data.push_back(*tmp_data);