द्वारा वेक्टर पासिंग सामान्य सी सरणियों का उपयोग करते हुए मैं ऐसा ही कुछ करना चाहते हैं: अबसंदर्भ
void do_something(int el, int **arr)
{
*arr[0] = el;
// do something else
}
, मैं वेक्टर के साथ मानक सरणी बदलना चाहते हैं, और प्राप्त करने के लिए यहाँ एक ही परिणाम:
void do_something(int el, std::vector<int> **arr)
{
*arr.push_front(el); // this is what the function above does
}
लेकिन यह प्रदर्शित करता है "अभिव्यक्ति में वर्ग प्रकार होना चाहिए"। यह ठीक से कैसे करें?
'' पूर्णांक ** arr''? ? एक 2 डी सरणी सीधे कैसे असाइन करें? यदि आपको 2 डी सरणी की आवश्यकता है, '' foo (वेक्टर> और arr) ''। –
gongzhitaao
मुझे लगता है कि वह शायद एक सरणी में एक सूचक को दो आयामी सरणी नहीं पारित करने का प्रयास कर रहा था .. अगर मैं गलत हूं तो मुझे सही करें – Mppl
बहुत सारे उत्तर हैं लेकिन किसी ने भी ध्यान नहीं दिया है कि यह पॉइंटर्स की एक सरणी है, न कि एक सरणी के लिए सूचक। वे एक 'std :: वेक्टर 'चाहते हैं। –