我試圖將std::vector<T>::iterator
轉換爲void *
,但得到編譯器錯誤爲錯誤的轉換。有什麼辦法嗎?從std :: vector <T> :: iterator轉換爲void *
-4
A
回答
3
剛剛得到的指針與取消引用向量元素:
vector<Type>::iterator i = ...;
void* data = &*i;
或者矢量數據:
void* data = vec.data();
相關問題
- 1. 將void *轉換爲std :: function <void()>
- 2. 展開std :: vector <std :: vector <T>>轉換爲std :: vector <T>
- 3. 將std :: vector <std :: vector <float>>轉換爲float **
- 4. 怎樣的std ::矢量<vector>爲void *轉換
- 5. 將std :: function <void(Derived *)>轉換爲std :: function <void(Base*)>
- 6. 將矢量<derived> :: iterator轉換爲矢量<base> :: iterator
- 7. 錯誤2664 - 無法從std :: vector <...>轉換爲std :: tr1 :: shared_ptr
- 8. iterate std :: vector <std :: vector <char>>?
- 9. 將std :: vector <std :: pair <const K, V> *>轉換爲std :: vector <std :: pair <const K, V>>
- 10. 將std :: vector <const Type*>轉換爲const std :: vector <T, A>&Vec
- 11. 如何將std :: vector <unsigned short>轉換爲std :: vector <int>?
- 12. 轉換爲const char **的爲std :: vector的<std::string>
- 13. 將std :: vector轉換爲char *
- 14. 將char *轉換爲std :: vector
- 15. 將NSDictionary轉換爲std :: vector
- 16. 將R :: vector轉換爲std :: vector
- 17. 如何從std :: vector <>
- 18. 將void *轉換爲std :: function
- 19. 將void *轉換爲std :: string
- 20. std :: vector <std :: vector <T>> vs std :: vector <T*>
- 21. 將std :: string轉換爲std :: vector <char>
- 22. 從Tizen :: Base :: FloatBuffer轉換爲std :: vector <float>?
- 23. 將std :: array轉換爲std :: vector
- 24. 檢查模板參數是否爲std :: vector <T> :: iterator
- 25. 'std :: vector <double> :: iterator'沒有名爲'begin'的成員
- 26. 將std :: iterator對轉換爲boost :: iterator_range
- 27. 錯誤:無法將'print'從'void(*)(int)'轉換爲'std :: function <void()>'
- 28. 在std :: vector :: begin()之前遞減std :: vector :: iterator
- 29. 從DataFrame轉換爲JavaPairRDD <Long,Vector>
- 30. 將std :: vector <boost :: shared_ptr <T>>轉換爲std :: vector的優雅方案<T*>
你能告訴代碼和相應的錯誤? – NathanOliver
不,沒有辦法做到這一點。如果您通過這樣描述您要解決的問題,您可能會得到解決實際問題的工作解決方案。 (這看起來像[XY問題](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem))。 – molbdnilo
請提供[mcve]。 – Barry