माइक्रोसॉफ्ट विजुअल सी ++

माइक्रोसॉफ्ट विजुअल सी ++ (MSVसी) माइक्रोसॉफ्ट द्वारा सी ,सी ++ और सी++/सीएक्स प्रोग्रामिंग भाषाओं के लिए एक अनुभाषक (कंप्यूटर) है। MSVसी स्वामित्व सॉफ्टवेयर है; यह मूल रूप से एक खुद को साबित करने वाला प्रोग्राम का सँयोजन था लेकिन बाद में माइक्रोसॉफ्ट विज़ुअल प्रसार कक्ष का एक हिस्सा बन गया और ट्रायलवेयर, फ्रीवेयर दोनों रूपों में उपलब्ध कराया गया। इसमें सी++ कोड के विकास और डिबगिंग के लिए उपकरण हैं, विशेष रूप से विंडोज़ API, DireसीtX और .NET के लिए लिखे गए कोड।

कई अनुप्रयोगों को ठीक से काम करने के लिए पुनर्वितरण योग्य विज़ुअल सी++ क्रम लाइब्रेरी पैकेज की आवश्यकता होती है। इन पैकेजों को प्रायः उनके द्वारा समर्थित अनुप्रयोगों से अलग स्थापित किया जाता है, जिससे कई अनुप्रयोगों को केवल एक संस्थापन के साथ पैकेज का उपयोग करने में सक्षम बनाया जाता है। ये विज़ुअल सी++ पुनर्वितरण योग्य और क्रम पैकेज ज्यादातर मानक लाइब्रेरी के लिए स्थापित किए जाते हैं जिनका उपयोग कई अनुप्रयोगों के लिए करते हैं।

इतिहास
विजुअल सी ++ के पूर्ववर्ती को माइक्रोसॉफ्ट सी/सी++ कहा जाता था। विंडोज 1.0 के लिए माइक्रोसॉफ्ट क्विक सी 2.5 और माइक्रोसॉफ्ट क्विक सी भी था। विज़ुअल सी++ अनुभाषक     को अभी भी माइक्रोसॉफ्ट सी/सी++ के रूप में जाना जाता है और विज़ुअल सी++ 2015 नवीनीकरण दो के प्रकाशन के अनुसार, संस्करण 14.0.23918.0 पर है।

16-बिट संस्करण

 * माइक्रोसॉफ्ट सी 1.0, जालक सी पर आधारित, 1983 में माइक्रोसॉफ्ट का पहला सी परिणाम था। यह K&R सी के अनुरूप नहीं था।
 * सी 2.0 ने संग्रह अनुभाग और आंकड़े अनुभाग दोनों के लिए 1MiB तक की अनुमति देते हुए बड़े मॉडल समर्थन को संकलित किया।
 * सी 3.0 माइक्रोसॉफ्टके अंदर विकसित पहला संस्करण था। इस संस्करण का उद्देश्य K&R और बाद के ANSI मानक के साथ अनुरूपता थी । यह 1984 की शुरुआत में माइक्रोसॉफ्ट (विंडोज़ और ज़ेनिक्स विकास के लिए) के अंदर उपयोग किया जा रहा था। इसे 1985 में एक परिणाम के रूप में भेज दिया गया था।
 * सी 4.0 ने इष्टतमीकरण और संग्रह व्यू, एक स्रोत-स्तरीय-डीबगर जोड़ा।
 * सी 5.0 ने चक्र इष्टमीकरण और 'विशाल मेमोरी मॉडल' (64 केबी से बड़ा सरणी) समर्थन जोड़ा। माइक्रोसॉफ्ट फोरट्रान और 80386 के लिए पहला 32-बिट अनुभाषक भी इस युक्ति का हिस्सा था।
 * 1988 में जारी सी 5.1 ने OS/2 1.x के लिए संकलन प्रोग्राम की अनुमति दी।
 * सी 6.0 1989 में जारी किया गया। इसमें प्रोग्रामर के कार्यक्षेत्र IDE, सार्वत्रिक प्रवाह विश्लेषण, एक स्रोत ब्राउज़र और एक नया डीबगर जोड़ा गया, और एक वैकल्पिक सी++ फ्रंट सिरा सम्मिलित किया गया।
 * सी/सी++ 7.0 1992 में जारी किया गया था। सी++ और एमएफसी(माइक्रोसॉफ्ट फाउंडेशन     क्लास लाइब्रेरी ) 1.0 के लिए अंतनिर्मित समर्थन जोड़ा गया।
 * विज़ुअल सी++ 1.0, जिसमें एमएफसी2.0 सम्मिलित था, ये फरवरी 1993 में 'विज़ुअल' सी++ का पहला संस्करण जारी किया गया था। यह सीफ्रंट 2.1 के अनुरूप था और दो संस्करणों में उपलब्ध था :                                                                          * * *मानक: विंडोज के लिए क्विकसी को बदल दिया गया।
 * दक्षतापूर्वक: सी/सी++ 7.0 को बदला गया। डॉस और विंडोज अनुप्रयोगों, एक इष्टतमीकरण अनुभाषक, एक स्रोत प्रोफाइलर और विंडोज 3.1 SDK दोनों को बनाने की क्षमता सम्मिलित है। फार घेरा 286 डॉस विस्तारक लाइट भी सम्मिलित थी।
 * विजुअल सी++ 1.5 को दिसंबर 1993 में जारी किया गया था, जिसमें एमएफसी2.5 सम्मिलित था, और एमएफसीमें OLE 2.0 और ODBसी का पक्ष जोड़ा गया था। यह विजुअल सी++ का पहला संस्करण था जो केवल सीडी-रोम पर आया था।
 * विजुअल सी++ 1.51 और 1.52 प्रमाणीकरण जाँच के भाग के रूप में उपलब्ध थे।
 * विजुअल सी++ 1.52b 1.52 के समान है, लेकिन इसमें संचालन विकास उपकरण समूह ( किट) सम्मिलित नहीं है।
 * विजुअल सी++ 1.52सी 1.5 का एक पैच किया हुआ संस्करण था। यह माइक्रोसॉफ्ट विंडोज़ 3.x. के लिए विगत और यकीनन सबसे प्रचलित विकास पटल है। यह माइक्रोसॉफ्ट विकास प्रसार के माध्यम से उपलब्ध है।

सख्ती से 32-बिट संस्करण

 * विजुअल सी++ 1.0 (मूल नाम: विजुअल सी++ 32-बिट संस्करण) इंटेल 386 स्थापत्य के लिए 32-बिट विकास के लिए पहला संस्करण था। यद्यपि 16-बिट संस्करण 1.5 उपलब्ध होने पर जारी किया गया था, इसमें OLE2 और ओडीबीसी के लिए समर्थन सम्मिलित नहीं था। यह विजुअल सी++ 16/32-बिट सेट नामक पोंटल में भी उपलब्ध था, जिसमें विजुअल सी++ 1.5 सम्मिलित था।
 * विज़ुअल सी++ 2.0, जिसमें एमएफसी 3.0 सम्मिलित था, केवल 32-बिट वाला पहला संस्करण था। कई मायनों में, यह संस्करण अपने समय से आगे था, क्योंकि विंडोज 95, के बाद से, तब "शिकागो" कूटनाम, अभी तक जारी नहीं किया गया था, और विंडोज एनटी के पास केवल एक छोटा सा बाजार हिस्सा था। माइक्रोसॉफ्ट ने विजुअल सी++ 1.5 को 2.x विज्ञप्ति के हिस्से के रूप में 2.1 तक सम्मिलित और नवीनतम किया, जिसमें विजुअल सी++ 1.52 और संचालन विकास किट (सीडीके) के 16-बिट और 32-बिट दोनों संस्करण सम्मिलित थे। विजुअल सी++ 2.x ने भी Win32s के विकास का समर्थन किया। यह माइक्रोसॉफ्ट विकास प्रसार के माध्यम से उपलब्ध है। यहाँ एमआईपीएस और अल्फा प्रसंस्कारित्र (यंत्र) के लिए एक विजुअल सी++ 2.0 आरआईएससी संस्करण था, साथ ही मैकितोश (68000 निर्देश सेट) के लिए कई ऑपरेटिंग सिस्टमस पर खुलने में समर्थ सॉफ्टवेर क़ा (क्रॉस-प्लेटफ़ॉर्म ) संस्करण भी था।
 * विजुअल सी++ 2.1 और 2.2 अवनिर्देश के माध्यम से उपलब्ध 2.0 के लिए नवीनतम थे।
 * 1995-12-11 को जारी विजुअल सी++ 4.0, [14] ने विकास प्रसारण-कक्ष आईडीई की शुरुआत की। गैर-अतिव्यापी पट्टिकाएँ-दिशाज्ञान पट्टिका, संयोजन संपादक/स्रोत स्तर डीबगर(एक प्रोग्राम जो दूसरे प्रोग्राम्स में कमियों का अन्वेषण करता है) पट्टिका , और कंसोल आउटपुट पट्टिका [15] - विजुअल प्रसारण-कक्ष परिणाम पंक्ति (2013 तक) के माध्यम से जारी है।विज़ुअल सी++ 4.0 में एमएफसी 4.0 सम्मिलित है, इसे विंडोज़ 95 और विंडोज़ एनटी के लिए प्रारूपित किया गया था। रिक्थ ( विंडोज़ 3.x/DOS) युक्ति के समर्थन की अनुमति देने के लिए, 4.0 विजुअल सी++ 1.52 स्थापन सीडी के साथ समूह में आया। अवनिर्देश के माध्यम से उपलब्ध अद्यतन में विजुअल सी++ 4.1 सम्मिलित है, जो माइक्रोसॉफ्ट गेम एसडीके (बाद में X के समक्ष एसडीके के रूप में अलग से जारी किया गया) और विजुअल सी++ 4.2 के साथ आया। विजुअल सी++ 4.0 और एमएफसी 4.0 के बीच संस्करण संख्या समानता प्राप्त करने के लिए संस्करण संख्या 3.0 को छोड़ दिया गया था।
 * विज़ुअल सी++ 4.2 ने विंडोज़ 3.x (Win32s) के विकास का समर्थन नहीं किया। यह उपलब्ध मैक (कंप्यूटर) के लिए एक क्रॉस-प्लेटफ़ॉर्म संस्करण के साथ अंतिम संस्करण था और यह 2.x संस्करण से भिन्न था जिसमें यह सामर्थ्यपीसी निर्देश सेट के लिए संग्रह की भी अनुमति देता था।
 * विजुअल सी++ 5.0, जिसमें एमएफसी 4.21 सम्मिलित था और 1997-04-28 को जारी किया गया था, 4.2 से एक प्रमुख उन्नयन था। चार संस्करणों में उपलब्ध: शिक्षा, दक्षता, उद्यम, और आरआईएससी।
 * विजुअल सी++ 6.0 (आमतौर पर वीसी6 के रूप में जाना जाता है), जिसमें एमएफसी 6.0 सम्मिलित था, 1998 में जारी किया गया था। प्रदर्शन कुछ विवादग्रस्त था क्योंकि इसमें एमएफसी के लिए प्रत्याशितअद्यतन सम्मिलित नहीं था। विज़ुअल सी++ 6.0 अभी भी पर्याप्त लोकप्रिय है और अक्सर रिक्थ युक्ति को बनाए रखने के लिए उपयोग किया जाता है। हालाँकि,यहाँ  विंडोज़ एक्सपी के तहत इस संस्करण के साथ समस्याएँ हैं, विशेष रूप से डिबगिंग प्रणाली के तहत (उदाहरण के लिए, स्थिर चर के मान प्रदर्शित नहीं होते हैं)। डीबगिंग समस्याओं को विजुअल सी++ 6.0 प्रसंस्कारित्र पैक नामक पैच से हल किया जा सकता है। संस्करण संख्या: 12.00.8804
 * विज़ुअल सी++ .एनईटी 2002 (विज़ुअल सी++ 7.0 के रूप में भी जाना जाता है), जिसमें एमएफसी 7.0 सम्मिलित था, 2002 में लिंक टाइम कोड जनरेशन और डिबगिंग क्रम चेक, .एनईटी 1.0, और विजुअल सी# और  व्यवस्थितसी++ के लिए समर्थन के साथ जारी किया गया था। नए उपयोगकर्ता अंतरापृष्ठ  विज़ुअल आधार रूप की कई व्यस्त उपाय और अभिसमय का उपयोग किया, जो सी++ विकास के बीच इसकी कुछ अलोकप्रियता के लिए जिम्मेदार है। संस्करण संख्या: 13.00.9466
 * विज़ुअल सी++ .एनईटी 2003 (विज़ुअल सी++ 7.1 के रूप में भी जाना जाता है), जिसमें एमएफसी7.1 सम्मिलितथा, 2003 में .एनNET 1.1 के साथ जारी किया गया था और यह विजुअलसी++ .NET 2002 का एक प्रमुख अपग्रेड था। इसे विज़ुअल सी++ .NET का एक पैच माना गया था। 2002. तदनुसार, विजुअल स्टूडियो .NET 2003 के अंग्रेजी भाषा के उन्नयन संस्करण को विजुअल स्टूडियो .NET 2002 के अंग्रेजी भाषा के संस्करण के मालिकों के लिए न्यूनतम लागत पर भेज दिया गया। लक्ष्य के रूप में विंडोज 95 और एनटी 4.0 का समर्थन करने वाला यह अंतिम संस्करण था। संस्करण संख्या: 13.10.3077
 * एम्बेडेड विज़ुअल सी++ विभिन्न संस्करणों में विंडोज सीई ऑपरेटिंग सिस्टम के कुछ संस्करणों के विकास के लिए उपयोग किया गया था। प्रारंभ में इसने विज़ुअल सी++ 6.0 में जोड़े गए उपकरणों से युक्त एक विकास परिवेश को प्रतिस्थापित किया। eMbedded विजुअलसी++ को माइक्रोसॉफ्टविजुअलStudio द्वारा एक अलग विकास परिवेश के रूप में प्रतिस्थापित किया गया था।

32-बिट और 64-बिट संस्करण

 * विज़ुअल सी++ 2005 (विज़ुअल सी++ 8.0 के रूप में भी जाना जाता है), जिसमें एमएफसी8.0 सम्मिलितथा, नवंबर 2005 में जारी किया गया था। यह संस्करण .NET 2.0 का समर्थन करता है और इसमें .NET फ्रेमवर्क (सी++/सीLI) के उद्देश्य से लक्षित सी++ का एक नया संस्करण सम्मिलितहै। पिछले संस्करण (प्रबंधित सी ++) को बदलने का। सीएलआई के लिए प्रबंधित सी ++ अभी भी कंपाइलर विकल्पों के माध्यम से उपलब्ध है। इसने ओपनएमपी भी पेश किया। विजुअल सी++ 2005 के साथ, माइक्रोसॉफ्ट ने टीम फाउंडेशन सर्वर भी पेश किया। विजुअलसी++ 8.0 में एमएफसीAppWizard प्रोजेक्ट्स को संकलित करने में समस्याएँ हैं जो विजुअलStudio 6.0 का उपयोग करके बनाए गए थे, इसलिए यदि पुनर्लेखन संभव नहीं है तो लीगेसी परियोजनाओं का रखरखाव मूल IDE के साथ जारी रखा जा सकता है। विज़ुअल सी++ 2005 विंडोज 98 और विंडोज़ मी को लक्षित करने में सक्षम अंतिम संस्करण है। SP1 संस्करण (14.00.50727.762) माइक्रोसॉफ्टविंडोज़SDK में भी उपलब्ध है।
 * विजुअल सी++ 2008 (जिसे विजुअल सी++ 9.0 के नाम से भी जाना जाता है) नवंबर 2007 में जारी किया गया था। यह संस्करण .NET 3.5 का समर्थन करता है। सीLI के लिए प्रबंधित सी++ अभी भी कंपाइलर विकल्पों के माध्यम से उपलब्ध है। डिफ़ॉल्ट रूप से, विज़ुअल सी++ 2008 रनटाइम्स (स्थैतिक और गतिशील लिंकिंग) के विरुद्ध संकलित सभी एप्लिकेशन केवल विंडोज़2000, विंडोज़XP SP2 और बाद के संस्करण पर काम करेंगे। Vसी9 के लिए रिलीज़ किया गया फीचर पैक, जिसे बाद में SP1 में सम्मिलितकिया गया, सी++ सी ++ तकनीकी रिपोर्ट 1 लाइब्रेरी एक्सटेंशन के लिए समर्थन जोड़ा गया। SP1 संस्करण (15.00.30729.01) माइक्रोसॉफ्टविंडोज़SDK में भी उपलब्ध है।
 * विज़ुअल सी++ के कुछ संस्करणों ने इटेनियम 2 का समर्थन किया।
 * विजुअलसी++ 2010 (जिसे विजुअलसी++ 10.0 के रूप में भी जाना जाता है) 12 अप्रैल, 2010 को जारी किया गया था। यह बेहतर IntelliSense और कोड-पूर्ण समर्थन के लिए IntelliSense जानकारी सहित स्रोत कोड के बारे में जानकारी संग्रहीत करने के लिए एसक्यूएल सर्वर कॉम्पैक्ट डेटाबेस का उपयोग करता है। हालाँकि, विजुअलसी++ 2010 सी++/सीLI के लिए Intellisense का समर्थन नहीं करता है। यह संस्करण समानांतर पैटर्न लाइब्रेरी नामक एक सी ++ समानांतर कंप्यूटिंग लाइब्रेरी जोड़ता है, सी ++ 11 के लिए आंशिक समर्थन, एडिसन डिजाइन समूह फ्रंट एंड के आधार पर इंटेलिसेन्स में काफी सुधार हुआ है, और संकलक और उत्पन्न कोड दोनों के प्रदर्शन में सुधार। यह संस्करण .NET 4.0 पर बनाया गया है, लेकिन मशीन कोड के संकलन का समर्थन करता है। आंशिक सी++11 समर्थन में मुख्य रूप से छह संकलक विशेषताएं सम्मिलितहैं: लैम्ब्डा, प्रतिद्वंद्विता संदर्भ, ऑटो, deसीltype, statiसी_assert, और nullptr। सी++11 पुस्तकालय सुविधाओं का भी समर्थन करता है (उदाहरण के लिए, TR1 घटकों को std::tr1 नामस्थान से सीधे std नाम स्थान पर ले जाना)। वैराडिक टेम्पलेट पर भी विचार किया गया था, लेकिन कम प्राथमिकता होने के कारण कुछ भविष्य के संस्करण तक देरी हुई, जो इस तथ्य से उपजी है कि, अन्य महंगी-से-कार्यान्वयन सुविधाओं (लैम्ब्डा, रावल्यू संदर्भ) के विपरीत, वैरैडिक टेम्प्लेट केवल पुस्तकालय के एक अल्पसंख्यक को लाभान्वित करेंगे। अधिकांश संकलक अंत उपयोगकर्ताओं के बजाय लेखक। डिफ़ॉल्ट रूप से, विजुअलसी++ 2010 रनटाइम के विरुद्ध संकलित सभी एप्लिकेशन केवल विंडोज़XP SP2 और बाद के संस्करण पर काम करते हैं। RTM संस्करण (16.00.30319) माइक्रोसॉफ्टविंडोज़SDK|विंडोज़SDK for विंडोज़7 और .NET Framework 4 (WinSDK v7.1) में भी उपलब्ध है। SP1 संस्करण (16.00.40219) विजुअलStudio 2010 सर्विस पैक 1 के हिस्से के रूप में या विंडोज़SDK 7.1 के लिए माइक्रोसॉफ्टविजुअलसी++ 2010 सर्विस पैक 1 कंपाइलर अद्यतनके माध्यम से उपलब्ध है।
 * विज़ुअल सी++ 2012 (विज़ुअल सी++ 11.0 के रूप में भी जाना जाता है) 15 अगस्त, 2012 को जारी किया गया था। इसमें उन्नत सी++11 समर्थन और विंडोज रनटाइम विकास के लिए समर्थन सम्मिलितहै।
 * विजुअल सी++ 2013 (जिसे विजुअल सी++ 12.0 के रूप में भी जाना जाता है) 17 अक्टूबर, 2013 को जारी किया गया था। इसमें आगे सी++11 और सी99 समर्थन की सुविधा है, और एक प्रतिनिधि राज्य हस्तांतरण एसडीके पेश करता है।
 * विजुअल सी++ 2015 (जिसे विजुअल सी++ 14.0 के नाम से भी जाना जाता है) 20 जुलाई, 2015 को जारी किया गया था। इसमें बेहतर सी++ 11/14/17 सपोर्ट है। माइक्रोसॉफ्ट से किसी भी घोषणा के बिना, विजुअल स्टूडियो 2015 अद्यतन2 ने संकलित बायनेरिज़ में टेलीमेट्री कॉल उत्पन्न करना शुरू कर दिया। कुछ उपयोगकर्ताओं द्वारा इस समस्या के बारे में माइक्रोसॉफ्टसे संपर्क करने के बाद, माइक्रोसॉफ्टने कहा कि वे भविष्य के विजुअलStudio 2015 अद्यतन 3 के साथ संकलन करते समय इन टेलीमेट्री कॉलों को हटा देंगे। विज़ुअल स्टूडियो 2015 अद्यतन3 में विज़ुअल सी ++ सीआरटी स्थिर पुस्तकालयों से विचाराधीन फ़ंक्शन को हटा दिया गया था।
 * विज़ुअल सी++ 2017 (विज़ुअल सी++ 14.1 के रूप में भी जाना जाता है) 7 मार्च, 2017 को जारी किया गया था।
 * विजुअल सी++ 2019 (जिसे विजुअल सी++ 14.20 के नाम से भी जाना जाता है) 2 अप्रैल, 2019 को जारी किया गया था।
 * विजुअल सी++ 2022 (जिसे विजुअल सी++ 14.30 के नाम से भी जाना जाता है) 8 नवंबर, 2021 को जारी किया गया था।

आंतरिक संस्करण क्रमांकन
पूर्वनिर्धारित मैक्रो  विज़ुअल सी++ कंपाइलर के प्रमुख और लघु संस्करण संख्याओं को इंगित करता है। मैक्रो का मान एक पूर्णांक शाब्दिक है जिसमें अंतिम दो अंक लघु संस्करण संख्या को इंगित करते हैं और पूर्ववर्ती अंक प्रमुख संस्करण संख्या को इंगित करते हैं।

विजुअल स्टूडियो 2017 से शुरुआत करते हुए,  हर विज़ुअल सी++ टूलसेट अद्यतनपर नीरस रूप से वृद्धि की जाती है। इस प्रकार, उदाहरण के लिए, MSVसी संस्करण 14.11 जो विजुअलStudio 2017 संस्करण 15.3 सेट के साथ आता है   को. माइक्रोसॉफ्टउपयोग करने की अनुशंसा करता है  ऑपरेटर के मूल्य का परीक्षण करने के लिए.

माइक्रोसॉफ्ट विज़ुअल सी और सी ++ कंपाइलर्स के प्रत्येक संस्करण से जुड़े एमएसवीसी संस्करणों की एक तालिका निम्नलिखित है।

ये संस्करण संख्याएँ विजुअल सी++ कम्पाइलरों और पुस्तकालयों की प्रमुख संस्करण संख्या को संदर्भित करती हैं, जैसा कि संस्थापन निर्देशिकाओं से देखा जा सकता है। यह विजुअल स्टूडियो रिलीज के नाम पर वर्ष का उल्लेख नहीं करता है। विस्तृत सूची उपलब्ध है। ध्यान दें कि सी ++ कंपाइलर निष्पादन योग्य संस्करण मेल खाता है _MSC_VER और समग्र रूप से विज़ुअल सी++ उत्पाद के संस्करण से भिन्न है। उदाहरण के लिए 14.22 (विजुअल स्टूडियो 2019 16.2.5) में सम्मिलितसीl.exe इसके संस्करण को 19.22.27905 के रूप में रिपोर्ट करता है यदि बिना तर्क के चलाया जाता है।

वहाँ भी है एक _MSC_FULL_VER बिल्ड नंबर के बारे में अतिरिक्त जानकारी के लिए 1200 से परिभाषित मूल्य।

एबीआई
विज़ुअल सी++ कंपाइलर अनुप्रयोग बाइनरी इंटरफ़ेस प्रमुख कंपाइलर रिलीज़ के बीच ऐतिहासिक रूप से बदल गया है। यह विशेष रूप से एसटीएल कंटेनरों के मामले में है, जहां कंपाइलर रिलीज के बीच कंटेनर आकार बहुत भिन्न होते हैं। इसलिए माइक्रोसॉफ्ट मॉड्यूल सीमाओं पर सी ++ इंटरफेस का उपयोग करने के खिलाफ अनुशंसा करता है जब कोई भिन्न कंपाइलर संस्करण का उपयोग करके संकलित क्लाइंट कोड को सक्षम करना चाहता है। सी++ के बजाय, माइक्रोसॉफ्टसी (प्रोग्रामिंग भाषा) का उपयोग करने की अनुशंसा करता है या घटक वस्तु मॉडल इंटरफेस, जिन्हें कंपाइलर रिलीज के बीच स्थिर एबीआई रखने के लिए डिज़ाइन किया गया है।

सभी 14.x MSVसी रिलीज़ में एक स्थिर ABI है, और इन संस्करणों के साथ निर्मित बायनेरिज़ को आगे-संगत तरीके से मिश्रित किया जा सकता है, निम्नलिखित प्रतिबंधों को ध्यान में रखते हुए:
 * उपयोग किया जाने वाला टूलसेट संस्करण किसी भी लिंक्ड बायनेरिज़ को बनाने के लिए उपयोग किए जाने वाले उच्चतम टूलसेट संस्करण के बराबर या उससे अधिक होना चाहिए।
 * एमएसवीसी पुनर्वितरण योग्य संस्करण किसी भी एप्लिकेशन घटक द्वारा उपयोग किए जाने वाले टूलसेट संस्करण के बराबर या उससे अधिक होना चाहिए।
 * /GL (संपूर्ण प्रोग्राम ऑप्टिमाइज़ेशन) के साथ संकलित स्टेटिक लाइब्रेरी या ऑब्जेक्ट फ़ाइलें संस्करणों के बीच बाइनरी संगत नहीं हैं और ठीक उसी टूलसेट का उपयोग करना चाहिए।

सी रनटाइम लाइब्रेरी
विज़ुअल सी++ सी रनटाइम लाइब्रेरी के विभिन्न संस्करणों के साथ आता है। इसका अर्थ है कि उपयोगकर्ता अपने कोड को किसी भी उपलब्ध लाइब्रेरी के साथ संकलित कर सकते हैं। हालांकि, एक ही प्रोग्राम में विभिन्न घटकों (डायनामिक-लिंक लाइब्रेरी, EXEs) का उपयोग करते समय यह कुछ समस्याएं पैदा कर सकता है। एक विशिष्ट उदाहरण विभिन्न लाइब्रेरी (कंप्यूटिंग) का उपयोग करने वाला एक प्रोग्राम है। उपयोगकर्ता को प्रोग्राम के सभी घटकों के लिए समान सी मानक लाइब्रेरी|सी रन-टाइम का उपयोग करना चाहिए जब तक कि निहितार्थ समझ में न आए। माइक्रोसॉफ्टसंभावित समस्याओं से बचने के लिए थ्रेड (कंप्यूटर साइंस), डायनेमिक लिंक लाइब्रेरी (/MD या/MDd कंपाइलर विकल्प) का उपयोग करने की अनुशंसा करता है।

पॉज़िक्स
हालाँकि माइक्रोसॉफ्टका सीRT POSIX इंटरफेस के एक बड़े उपसमुच्चय को लागू करता है, विजुअल सी++ कंपाइलर डिफ़ॉल्ट रूप से ऐसे कार्यों के हर उपयोग पर एक चेतावनी देगा। तर्क यह है कि सी और सी ++ मानकों को कार्यान्वयन-परिभाषित इंटरफेस से पहले एक अंडरस्कोर उपसर्ग की आवश्यकता होती है, इसलिए इन कार्यों का उपयोग गैर-मानक है। हालाँकि, सिस्टम जो वास्तव में POSIX- संगत हैं, वे इन रेखांकित नामों को स्वीकार नहीं करेंगे, और इसके बजाय केवल चेतावनी को बंद करना अधिक पोर्टेबल है।

सी
यद्यपि उत्पाद सी (प्रोग्रामिंग भाषा) प्रोग्रामिंग भाषा के लिए एक आईडीई के रूप में उत्पन्न हुआ, कई वर्षों तक उस भाषा के लिए संकलक का समर्थन केवल एएनएसआई सी के मूल संस्करण के अनुरूप था, जो 1989 से डेटिंग कर रहा था, लेकिन मानक का सी 99 संशोधन नहीं था। इसके प्रकाशन के एक दशक से भी अधिक समय बाद, 2011 में भी सी99 का समर्थन करने की कोई योजना नहीं थी। विजुअल सी++ 2013 ने अंततः अपने सी मोड में विभिन्न सी99 विशेषताओं के लिए समर्थन जोड़ा (नामित इनिशियलाइज़र्स, कंपाउंड लिटरल और  प्रकार), हालांकि यह अभी भी पूरा नहीं हुआ था। विज़ुअल सी++ 2015 ने सी99 मानक लाइब्रेरी के पूर्ण समर्थन के साथ सी99 समर्थन में और सुधार किया, उन विशेषताओं को छोड़कर जिनके लिए सी99 भाषा सुविधाओं की आवश्यकता होती है जो अभी तक संकलक द्वारा समर्थित नहीं हैं। मानक के सी11 (सी मानक संशोधन) संशोधन से अधिकांश परिवर्तन अभी भी विजुअलसी++ 2017 द्वारा समर्थित नहीं हैं। उदाहरण के लिए, के माध्यम से सामान्य चयन  कीवर्ड कंपाइलर द्वारा समर्थित नहीं हैं और परिणामस्वरूप सिंटैक्स त्रुटि होती है। प्रीप्रोसेसर को 2018 में सी11 के साथ ओवरहाल किया गया था:

"Full C11 conformance is on our roadmap, and updating the preprocessor is just the first step in that process. The C11 feature is not actually part of the preprocessor, so it has not yet been implemented. When implemented I expect the feature to work independently of if the traditional or updated preprocessor logic is used."

फरवरी 2020 तक MSVसी को समर्थन देने के लिए प्रतिबद्ध है, यह स्पष्ट नहीं है कि यह कब शिप होगा। सितंबर 2020 में, माइक्रोसॉफ्टने MSVसी में सी11 और सी17 मानकों के समर्थन की घोषणा की।

सी ++
डिफ़ॉल्ट सेटिंग्स के साथ MSVसी दो-चरण नाम लुकअप नहीं करता है जो इसे अमान्य कोड की एक विस्तृत श्रृंखला को फ़्लैग करने से रोकता है। अधिकांश चेक टेम्प्लेट इन्स्टेन्शियशन के लिए स्थगित कर दिए जाते हैं। अधिक हाल के संस्करण इस व्यवहार को ठीक करते हैं, लेकिन इसे कमांड-लाइन विकल्प द्वारा सक्षम करने की आवश्यकता है.

बाहरी संबंध

 * सी++ Tools and Features in विजुअलStudio Editions
 * माइक्रोसॉफ्टसी++ Build Tools
 * सी9::GoingNative on माइक्रोसॉफ्टसीhannel 9
 * सी9::GoingNative on माइक्रोसॉफ्टसीhannel 9