Movatterモバイル変換


[0]ホーム

URL:


Zum Inhalt springen
WikipediaDie freie Enzyklopädie
Suche

Visual C++

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet vonMicrosoft Visual C++)
Visual C++

Basisdaten

EntwicklerMicrosoft
Erscheinungsjahr1993
Aktuelle Version14.42.34433.0[1]
(6. November 2024)
BetriebssystemMicrosoft Windows
Programmier­spracheC++
KategorieCompiler
LizenzFreeware, Shareware
docs.microsoft.com/cpp/

Microsoft Visual C++ (Abkürzung: MSVC) ist einCompiler des UnternehmensMicrosoft zur Entwicklung von Software in der ProgrammierspracheC++ unter dem BetriebssystemWindows und anderen Betriebssystemen von Microsoft.

Aktuelle Versionen von Visual C++ verfügen über den erweiterten C++-BefehlssatzC++/CLI, der unter anderem die Nutzung der.Net-Framework-Programmierung vereinfachen soll.

Visual C++ Produkte wurden als grafische Entwicklungswerkzeuge konzipiert und werden daher meist zusammen mit einerEntwicklungsumgebung ausgeliefert. Diese war anfangs auf die reine C++ Entwicklung ausgelegt und unterschied sich von anderenIDEs wie jenen vonVisual Basic oderJava.

Durch die .NET Strategie wurden mitVisual Studio 2002 alle unterstützten Sprachen (C++,C#,VB.NET) in einer einzigen grafischen Entwicklungsumgebung zusammengefasst. Visual C++ ist seither ein Bestandteil vonVisual Studio.

Verfügbarkeit

[Bearbeiten |Quelltext bearbeiten]

AlleVisual Studio Professional undVisual Studio Enterprise Produkte enthalten seit ihrer Einführung eine vollständige Visual C++ Umgebung mit allen Plattform-Toolsets und den aktuellen Bibliotheksversionen vonMFC,ATL und weiteren Programmierschnittstellen für den Unternehmensbereich.[2]

Von Version 2005 bis 2010 war Visual C++ als kostenlose separateExpress Edition mit eigener eingeschränkterIDE aber ohne die anderen Visual Studio Sprachen verfügbar.[3] Für weitere Sprachen wurden eigene Express-Produkte angeboten, wie z. B.:Visual C# Express,Visual Basic Express oderVisual J# Express.

Von 2012 bis 2017 existierte Visual C++ innerhalb vonVisual Studio Express für Desktop neben C# und Visual Basic in einer ebenfalls eingeschränkten Umgebung.

Das separat kostenlos herunterladbareWindows Platform SDK (heuteWindows SDK genannt) ist ebenfalls mit einem Visual C++ Compiler ausgestattet, dem jedoch eine grafische Entwicklungsumgebung fehlt.

Ab 2013 starteten mitVisual Studio Community und denBuild Tools für Visual Studio zwei weitere Produktserien, die Visual C++ bereitstellen. DieCommunity Edition löste dieExpress Editionen als kostenlose grafische Umgebungen ab, während dieBuild Tools nur die Compiler Toolsets ohne grafische Werkzeuge installierten um für automatische Build-Prozesse eingesetzt zu werden, wie z. B.: inDocker Containern.

Die aktuelle Version von Visual C++ ist Bestandteil der EntwicklungsumgebungMicrosoft Visual Studio 2022. Sie ist in den kostenpflichtigen VariantenProfessional,Enterprise undTest Professional erhältlich und kostenfrei alsCommunity Edition oder über dieBuild Tools für Visual Studio beziehbar.[4]

Vermarktung

[Bearbeiten |Quelltext bearbeiten]

Aus Marketinggründen trugen die Versionen 2002 und 2003 das Kürzel .NET als Zusatz im Namen. 2005 kam Microsoft von diesem Benennungsschema wieder ab.

Die kostenpflichtigenProfessional undEnterprise Editionen vonVisual Studio richten sich an professionelle Entwickler und Unternehmen für die Herstellung von kommerzieller Software. Sie enthalten zahlreiche Vorlagen für verschiedene Visual C++ basierte Projekte und sind durchPlugins beliebig erweiterbar. Bei Problemen können Entwickler den technischen Support von Microsoft in Anspruch nehmen.[5]

Die kostenlosenVisual C++ Express Editionen waren für den Einstieg in die Programmierung und kleine Projekte vorgesehen. Deren Entwicklungsumgebungen waren stark eingeschränkt und die installierten Compiler Toolsets deckten weniger Plattformen als die kostenpflichtigen Varianten ab (z. B.: anfangs nurWin32, später zusätzlichWin64). Auch fehlten Bibliotheken für die WinAPI Anbindung oderMFC und ATL. Diese wurden jedoch in späteren Editionen teilweise ergänzt. Der Einsatz von Express Editionen für die Schaffung kommerzielle Produkte istnicht untersagt.[6] Ein Umstieg von den Express zu den Professional und Enterprise Editionen war jederzeit möglich, da kompatible Dateiformate benutzt wurden.

MitVisual Studio Community wurde ein Großteil aller vorher nur kostenpflichtig erhältlichen Funktionen freigegeben. Die Community Lizenz gestattet die Arbeit an privaten, gemeinnützigen undOpen-Source-Projekten, schließt aber die kommerzielle Nutzung in Unternehmen ab einem bestimmten Umsatz aus.[7] Die somit freie Verfügbarkeit von Visual C++ trug zur Verbreitung des Compiler bei ohne das Geschäftsmodell der kostenpflichtigen Produkte zu beeinträchtigen.

Versionsgeschichte

[Bearbeiten |Quelltext bearbeiten]

Die Version 1.0 von Visual C++ erschien 1993 fürWindows 3.1. Sie war als Nachfolger vonMicrosoft C/C++ fürDOS vorgesehen. Version 2.0 von 1994 sollte als erste reine 32-Bit-Version den Umstieg aufWindows 9x vorbereiten. Version 4.0 führte die neue Integrierte EntwicklungsumgebungDeveloper Studio ein.

Die Versionen ab 2002 sind in der Lage, außer derMFC noch auf .NET basierende Projekte zu erstellen. Die ursprünglich „Managed C++“ genannten Spracherweiterungen wurden stark überarbeitet und stehen ab Version 2005 von Visual C++ alsC++/CLI zur Verfügung.

Seit 2012 ist die Entwicklung vonWindow Store Apps möglich, die nicht auf demWin32-API, sondern auf der neuenWindows Runtime Schnittstelle aufbauen. Ab 2015 werden alle neuenAPI Modelle durch dieUniversal Windows Platform zusammengefasst, die ebenfalls durch Visual C++ programmiert werden kann. Eine Spracherweiterung namensC++/CX ermöglicht hierbei den einfachen Zugang zu Windows Runtime Funktionen. Alternativ kann über die Windows Runtime C++ Template Library (WRL) mit Standard-C++ ebenso auf die Windows Runtime Umgebung zugegriffen werden.

Seit Version 2022 werden nur noch 64-Bit-Versionen von Visual Studio veröffentlicht. Neu hinzugekommen ist die native Unterstützung vonARM64 als Hostplattform für Visual Studio unterWindows 11, in der nativer C++ Code auf ARM64Hardware entwickelt und ausgeführt werden kann. (Debugging von ARM32 und ARM64 Code war zuvor nur perRemote-Debugger von einem x86-Studio aus möglich). Mit dem zusätzlichen ARM64EC Binärstandard ab Visual Studio 2022 17.4 steht eine Brückentechnologie zwischen x86-64 und ARM64 bereit, die der Softwaremigration von X86 hin zur ARM Plattform dienen soll.[8]

Compiler Versionierung

[Bearbeiten |Quelltext bearbeiten]

Die Visual C++ Versionierung liegt in bis zu 3 unterschiedlichen Varianten vor:[9]

  • Version der Visual Studio Produktserie, in der der Compiler enthalten ist. Sie ist seit dem Jahr 2002 dem Jahr der Veröffentlichung angenähert (z. B.: Visual Studio / Visual C++ 2003)
  • Versionsnummer des Compilers, die als Haupt- und Nebenversion hochgezählt wird (z. B.: MSVC-7.1)
  • _MSC_VER Versionsmakro als hochgezählte Ganzzahl, die innerhalb von C/C++ Codes benutzt werden kann, um den Compiler zu erkennen und neue Funktionen einzubinden. Visual C++ 1.0 beginnt bei_MSC_VER800 als Nachfolger von Microsoft C/C++ 7.0 mit einer_MSC_VER von700.
TitelVersion_MSC_VERDatumNeue Funktionen
Visual C++ 1.01.0800Februar 1993erste Version, fürMicrosoft Windows 3.1, in der Professional-Version auch fürDOS. Die Standard-Version ersetzteQuickC for Windows 1.0. Die Professional-Version ersetzteMicrosoft C/C++ 7.0.
Visual C++ 1.0 32-Bit-Edition1.0800August 1993fürMicrosoft Windows NT 3.1, nur für x86
Visual C++ 1.51.5800[10]Dezember 1993[11][12]letzte Version, die selber unterMicrosoft Windows 3.1 lauffähig ist und 16-Bit-Programme erzeugen kann
Visual C++ 2.02.0900Oktober 1994[13]fürMicrosoft Windows NT 3.5 (unterstützt x86, MIPS und Alpha-Prozessoren), MFC 3.0, unterstützt Windows 3.x nur noch viaWin32s, erste Version fürMacintosh (nurMotorola-68000-Prozessoren)
Visual C++ 4.04.01000September 1995[14]fürMicrosoft Windows NT 3.51 und erstmalsMicrosoft Windows 95, MFC 4.0, neue Integrierte EntwicklungsumgebungDeveloper Studio, erste Version fürPowerPC-Prozessoren, enthielt auch eine CD mit Visual C++ 1.52 für 16-Bit-Rückwärtskompatibilität. Die Standard-Version enthält vergleichbar zu QuickC keinen optimierenden Compiler.[15]
Visual C++ 4.14.11010für Microsoft Windows NT 3.51 und Microsoft Windows 95, erste Version mit Microsoft GameSDK (später umbenannt inDirectX), letzte Version mit Unterstützung für MIPS-Prozessoren und Win32s, nur als Update für MSDN-Abonnenten erhältlich gewesen
Visual C++ 4.24.21020September 1996fürMicrosoft Windows NT 4.0 und Microsoft Windows 95, MFC 4.2 mit Unterstützung fürActiveX, letzte Version mit Unterstützung für Macintosh und fürPowerPC-Prozessoren
Visual C++ 5.05.01100April 1997[16]für Microsoft Windows NT 4.0 und Microsoft Windows 95, modernisierte Entwicklungsumgebung, MFC 4.21
Visual C++ 6.06.01200Dezember 1998für Microsoft Windows NT 4.0 undMicrosoft Windows 98 sowie das kommendeWindows 2000, MFC 6.0, letzte Version für Alpha-Prozessoren
Visual C++ .NET 20027.013002002fürMicrosoft Windows XP, erstmalige Unterstützung für.NET-Projekte (1.0), Managed C++
Visual C++ .NET 20037.113102003Verbesserte C++03 Unterstützung, .NET 1.1
Visual C++ 20058.01400November 2005C++/CLI, .NET 2.0
Visual C++ 20089.01500November 2007fürMicrosoft Windows Vista, .NET 3.5, SP1 beinhaltet TR1 (Vorschau auf C++11 Bibiliotheksfunktionen)[17]
Visual C++ 201010.01600April 2010fürMicrosoft Windows 7, .NET 4.0, teilweise C++11 Unterstützung, verbessertes C++ Parsing für IntelliSense[18]
Visual C++ 201211.01700April 2012fürMicrosoft Windows 8, .NET 4.5,App-Store Unterstützung, verbesserte C++11 Unterstützung[19]
Visual C++ 201312.01800Oktober 2013fürMicrosoft Windows 8.1, .NET 4.5.1, erstmalsC99 Unterstützung[20], weiter verbesserte C++11 Unterstützung[21]
Visual C++ 201514.001900Juli 2015fürMicrosoft Windows 10,Android undiOS als Zielplattformen, C++14 Unterstützung, einige C++17 Features[22]
Visual C++ 201714.101910März 2017fürMicrosoft Windows 10,.NET Core, C++17 Unterstützung, teilweise C11 Unterstützung[23]
Visual C++ 201914.201920April 2019fürMicrosoft Windows 10, teilweise C++20 Unterstützung,CMake Integration[24], teilweise C11 und C17 Unterstützung[25]
Visual C++ 202214.301930November 2021fürMicrosoft Windows 11, erstmals nur für64-Bit-Hosts verfügbar, mit Version 17.4 wurde die erste nativeARM64-Variante für Windows 11 ARM64 veröffentlicht.[26]

Ab Visual Studio 2015 v14.0 wird das Visual C++ Compiler-Toolset im Verhältnis zur Visual Studio Version unterschiedlich hochgezählt. Während die Studio Hauptversion erhöht wird und die Nebenversion Updates abbildet, ist die Hauptversion des C++ Toolsets aktuell auf14 festgesetzt und die Nebenversion bildet in Zehnerschritten die Hauptversion des Studio Produktes ab.

Eine neuere Version von Visual Studio kann mit älteren Versionen des Toolsets betrieben werden.

Beispiel: Studio 2022 v17 Projekt kompiliert mit Toolset 14.10 (von Studio 2017 v15).

TitelStudio VersionC++ Toolset Version_MSC_VER
Visual Studio 201514.x14.0x>= 1900
Visual Studio 201715.x14.1x>= 1910
Visual Studio 201916.x14.2x>= 1920
Visual Studio 2022<=17.9.x14.3x>= 1930
Visual Studio 2022>=17.10.x14.4x>= 1940

C und C++ Standard Unterstützung

[Bearbeiten |Quelltext bearbeiten]

Die vollständige Unterstützung der einzelnen C++ Standards ist nicht eindeutig an die Jahreszahlen der Produktveröffentlichungen von Visual C++ gebunden.

Eine Visual C++ Compilerversion kann bereits Entwürfe von Funktionen beinhalten, die erst später in einem C++ Standard veröffentlicht werden (z. B.: VC++ 2010 enthielt bereits einige C++11 Features). Parallel dazu werden manche Funktionen erst spät (teilweise erst nach vielen Jahren) oder gar nicht implementiert.[27]

Visual C++ unterstützte bis zur Version 2012 (v11) nur den originalen C90 Standard, wodurch viele modernere C-Projekte (Dateiendung.c) nicht übersetzt werden konnten. Mit Visual C++ 2013 (v12) kam erstmals C99 Support hinzu und seit Visual C++ 2017 (v14.1) wird schrittweise der C11 und C17 Support ausgebaut.

Unterstützte C++ Zielplattformen

[Bearbeiten |Quelltext bearbeiten]
  • Windows Desktop Apps und Konsolendienste (x86-32, x86-64, ARM-32, ARM-64)
  • Windows Universal Apps (x86-32, x86-64, ARM-32, ARM-64)
  • Windows Driver (x86-32, x86-64, ARM-32, ARM-64)
  • Windows CE (x86, ARM und weitere)[28]
  • .NETCLI (Unmanaged-, Pure- und Safe-Mode)
  • Microsoft-POSIX (Optionale Unix Dienste abWindows NT 4, nur bis einschließlichWindows 8 verfügbar)
  • UEFI ROM, Runtime, Boot, Applications (x86-32, x86-64, ARM-32, ARM-64)
  • Android (Visual Studio Cross-Platform Module auf x86 und ARM-32, ARM-64)[29]
  • iOS (Visual Studio Cross-Platform Module)

Literatur

[Bearbeiten |Quelltext bearbeiten]

Weblinks

[Bearbeiten |Quelltext bearbeiten]

Einzelnachweise

[Bearbeiten |Quelltext bearbeiten]
  1. Source Links Archive: Microsoft Visual C++ 2015–2022 Redistributables – v14. GitHub, 13. August 2024, abgerufen am 6. November 2024. 
  2. Tyler Whitney et al.: C++ Tools and Features in Visual Studio Editions. Abgerufen am 14. Dezember 2022 (amerikanisches Englisch). 
  3. Windows- und Konsolenanwendungen mit MS Visual C++. Abgerufen am 14. Dezember 2022. 
  4. Die unterschiedlichen Versionen von Visual Studio
  5. MICROSOFT VISUAL STUDIO ENTERPRISE 2017, VISUAL STUDIO PROFESSIONAL 2017, VISUAL STUDIO TEST PROFESSIONAL 2017 UND TESTVERSION. Abgerufen am 14. Dezember 2022 (deutsch). 
  6. MICROSOFT-SOFTWARE-LIZENZBESTIMMUNGEN MICROSOFT VISUAL STUDIO 2017 EXPRESS FÜR WINDOWS DESKTOP. Abgerufen am 14. Dezember 2022 (deutsch). 
  7. MICROSOFT VISUAL STUDIO COMMUNITY 2017. Abgerufen am 14. Dezember 2022 (deutsch). 
  8. Marc Sweetgall et al.: Arm64EC for Windows 11 apps on Arm. Abgerufen am 7. Dezember 2022 (amerikanisches Englisch). 
  9. List of _MSC_VER and _MSC_FULL_VER. Abgerufen am 14. Dezember 2022 (englisch). 
  10. Predefined Macros. C/C++ Language and Run-Time Reference. In:Microsoft Visual C++ 1.5 Hilfe (MSCXX.HLP). 1993 (englisch). 
  11. "Visual C++ 1.5 Beta" umfangreicher Vorabtest in der PC Professionell 2/94 S. 15
  12. "Die Programm-Macher" Testvergleich mit anderen Compilern in der PC Professionell 1/95 S. 136
  13. "Visual C++ 2.0 Beta" umfangreicher Vorabtest in der PC Professionell 9/94 S. 26
  14. "C/C++-COMPILER FÜR WINDOWS Programmiermaschinen" Vergleich mehrerer Compiler in der PC Professionell 9/96 S. 146
  15. http://www.malsmith.net/blog/visual-c-visual-history/ A visual history of Visual C++
  16. "MICROSOFT VISUAL C++ 5.0 Entwickeln fürs Netz" PC Professionell 5/97 S. 66
  17. Visual CPP Team: Visual C++ 2008 Feature Pack Released! 7. April 2008, abgerufen am 7. Dezember 2022 (amerikanisches Englisch). 
  18. Visual CPP Team: Visual Studio 2010 is Now Available. 13. April 2010, abgerufen am 7. Dezember 2022 (amerikanisches Englisch). 
  19. Visual Studio Blog: Visual Studio 2012 RC Available Now! 31. Mai 2012, abgerufen am 7. Dezember 2022 (amerikanisches Englisch). 
  20. Pat Brenner: C99 library support in Visual Studio 2013. 19. Juli 2013, abgerufen am 7. Dezember 2022 (amerikanisches Englisch). 
  21. Eric Battalio: Visual Studio 2013 Available Now! 17. Oktober 2013, abgerufen am 7. Dezember 2022 (amerikanisches Englisch). 
  22. Eric Battalio: Visual Studio 2015 Preview is Now Available. 12. November 2014, abgerufen am 7. Dezember 2022 (amerikanisches Englisch). 
  23. Julia Liuson: Announcing Visual Studio 2017 General Availability... and more. 7. März 2017, abgerufen am 7. Dezember 2022 (amerikanisches Englisch). 
  24. Angel Zhou: Visual Studio 2019 Preview 2 is now available. 24. Januar 2019, abgerufen am 7. Dezember 2022 (amerikanisches Englisch). 
  25. Elnar Dakeshov: C11 and C17 Standard Support Arriving in MSVC. 14. September 2020, abgerufen am 7. Dezember 2022 (amerikanisches Englisch). 
  26. Mark Downie: Arm64 Visual Studio is officially here! 8. November 2022, abgerufen am 7. Dezember 2022 (amerikanisches Englisch). 
  27. Colin Robertson et al.: Microsoft C/C++-Sprachkonformität. Abgerufen am 7. Dezember 2022 (deutsch). 
  28. Visual Studio compatibility with Win CE 5/6/7 Platform. Abgerufen am 7. Dezember 2022. 
  29. Android Development | Visual Studio. Abgerufen am 7. Dezember 2022 (amerikanisches Englisch). 
Normdaten (Sachbegriff):GND:4319926-4 (GND Explorer,lobid,OGND,AKS)
Abgerufen von „https://de.wikipedia.org/w/index.php?title=Visual_C%2B%2B&oldid=252924577
Kategorien:

[8]ページ先頭

©2009-2025 Movatter.jp