2012-09-29 9 views
24

संभव डुप्लिकेट:
C++11 features in Visual Studio 2012प्रारंभिक सूची विजुअल स्टूडियो 2012 में वेक्टर के साथ काम नहीं कर रही है?

तो मैं ऊपर सी ++ 11 प्रारंभकर्ता सूचियों पर आज Wikipedia के माध्यम से पढ़ रहे हैं और कि सी ++ 11 देखा गया था मानक कंटेनरों के लिए निम्न सिंटैक्स का समर्थन करता है :

std::vector<std::string> v = { "xyzzy", "plugh", "abracadabra" }; 
std::vector<std::string> v({ "xyzzy", "plugh", "abracadabra" }); 
std::vector<std::string> v{ "xyzzy", "plugh", "abracadabra" }; 

मैं दृश्य स्टूडियो 2012 में निम्नलिखित का प्रयास करते हैं मैं संकलन त्रुटि मिलती है +०१२३०२१०३७०४

यहाँ मेरी कोड है:

#include <vector> 

using namespace std; 

int main() { 
    vector<string> vecs = {"h", "g", "e"}; 
} 

करता VS2012 प्रारंभकर्ता सूचियों का समर्थन नहीं या मैं बस कुछ गलत समझ रहा हूँ?

धन्यवाद!

+15

फिर भी मेरे लिए कुछ खराब तरीके से एमएसडीएन लेख पढ़ने के बजाय SO पर एक प्रश्न पूछना बहुत तेज़ था। मुझे लगता है मुझे अगली बार एसओ पर पोस्ट नहीं करना चाहिए। – Polaris878

+3

मैं पोलारिस से सहमत हूं। एमएसडीएन मुझे angers। – Marlon

उत्तर

38

विजुअल स्टूडियो 2012 प्रारंभकर्ता सूचियों का समर्थन नहीं करता है।

अच्छा, यह नवंबर 2012 सीटीपी तक नहीं था। अब यह कम से कम अल्फा राज्य में करता है। अनुमोदित, यह कोड अभी भी इसमें काम नहीं करेगा क्योंकि वे अभी भी मानक लाइब्रेरी में प्रारंभिक सूचियां डाल रहे हैं।

+2

धन्यवाद निकोल, यहां VS2012 सुविधाओं की सूची का वर्णन करने वाली एक अच्छी अच्छी तालिका है: http://blogs.msdn.com/b/vcblog/archive/2011/09/12/10209291.aspx – Polaris878

+1

समर्थन हालांकि अत्याचारी है। 'int मुख्य() {के लिए (int i: {1, 2, 3, 4, 5}) {}} 'एक आंतरिक संकलक त्रुटि देता है। [संपादित करें] वास्तव में, पूर्व-सीटीपी एक दुर्घटनाग्रस्त हो जाता है। सीटीपी में केवल प्रारंभिक सूचियों के लिए प्रारंभ/समाप्ति कार्यों की कमी है। – dascandy

+0

@ डेस्कंडी: हां। प्रारंभिक सूचियों के लिए मानक लाइब्रेरी समर्थन की कमी का यह हिस्सा है: std :: start और std :: end के लिए उचित अधिभार नहीं है, जो कि 'आधारित' पर निर्भर करता है। –

संबंधित मुद्दे