मैं इस तरह सरणियों का उपयोग कर (उदाहरण के लिए) मेरे C++/CLI कोड है: जब तक मैं करने के लिए पुस्तकालय "सरणी" जोड़नेअसंगत होने में कामयाब रहे सरणी और एसटीडी का उपयोग करते हुए: एक ही समय में सरणी
array<String^>^ GetColNames() {
vector<string> vec = impl->getColNames();
array<String^>^ arr = gcnew array<String^>(vec.size());
for (int i = 0; i < vec.size(); i++) {
arr[i] = strConvert(vec[i]);
}
return arr;
}
यह ठीक संकलन है परियोजना:
#include <array>
तब मैं, कैसे कामयाब CLI सरणी का उपयोग करने के पता नहीं है क्योंकि संकलक का मानना है कि सभी घोषित सरणियों std::array
हैं।
त्रुटियाँ उदाहरण:
array<String^>^ arr
// ^Error here: "too few arguments for class template "std::array""
gcnew array<String^>(vec.size())
// ^Error: "Expected a type specifier"
यह कैसे हल करने के लिए? मैंने उस फ़ाइल से using namespace std
को हटाने का प्रयास किया, लेकिन इससे कोई फर्क नहीं पड़ता। क्या मुझे इसे परियोजना पर हर दूसरी सी ++ फ़ाइल से हटा देना चाहिए?
सी ++ - क्ली निश्चित रूप से सी ++ नहीं है। – Deduplicator
'नेमस्पेस std;' का उपयोग करके हटाएं? अधिक जानकारी के लिए यहां देखें: http://stackoverflow.com/questions/1452721/why-is-using-namespace-std-Considered-bad-practice – Carsten
आपको 'नेमस्पेस std का उपयोग करना है;' आपको वह मिलता है जो आप लायक हैं:) – jrok