Top-Fragen
Zeitleiste
Chat
Kontext

Visual C++

Compiler von Microsoft für C++ Aus Wikipedia, der freien Enzyklopädie

Visual C++
Remove ads

Microsoft Visual C++ (Abkürzung: MSVC) ist ein Compiler des Unternehmens Microsoft zur Entwicklung von Software in der Programmiersprache C++ unter dem Betriebssystem Windows und anderen Betriebssystemen von Microsoft.

Schnelle Fakten Basisdaten ...
Remove ads

Aktuelle Versionen von Visual C++ verfügen über den erweiterten C++-Befehlssatz C++/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 einer Entwicklungsumgebung ausgeliefert. Diese war anfangs auf die reine C++ Entwicklung ausgelegt und unterschied sich von anderen IDEs wie jenen von Visual Basic oder Java.

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

Remove ads

Verfügbarkeit

Zusammenfassung
Kontext

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

Von Version 2005 bis 2010 war Visual C++ als kostenlose separate Express Edition mit eigener eingeschränkter IDE 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 oder Visual J# Express.

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

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

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

Die aktuelle Version von Visual C++ ist Bestandteil der Entwicklungsumgebung Microsoft Visual Studio 2022. Sie ist in den kostenpflichtigen Varianten Professional, Enterprise und Test Professional erhältlich und kostenfrei als Community Edition oder über die Build Tools für Visual Studio beziehbar.[4]

Remove ads

Vermarktung

Zusammenfassung
Kontext

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 kostenpflichtigen Professional und Enterprise Editionen von Visual 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 durch Plugins beliebig erweiterbar. Bei Problemen können Entwickler den technischen Support von Microsoft in Anspruch nehmen.[5]

Die kostenlosen Visual 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 nur Win32, später zusätzlich Win64). Auch fehlten Bibliotheken für die WinAPI Anbindung oder MFC und ATL. Diese wurden jedoch in späteren Editionen teilweise ergänzt. Der Einsatz von Express Editionen für die Schaffung kommerzielle Produkte ist nicht untersagt.[6] Ein Umstieg von den Express zu den Professional und Enterprise Editionen war jederzeit möglich, da kompatible Dateiformate benutzt wurden.

Mit Visual Studio Community wurde ein Großteil aller vorher nur kostenpflichtig erhältlichen Funktionen freigegeben. Die Community Lizenz gestattet die Arbeit an privaten, gemeinnützigen und Open-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.

Remove ads

Versionsgeschichte

Zusammenfassung
Kontext

Die Version 1.0 von Visual C++ erschien 1993 für Windows 3.1. Sie war als Nachfolger von Microsoft C/C++ für DOS vorgesehen. Version 2.0 von 1994 sollte als erste reine 32-Bit-Version den Umstieg auf Windows 9x vorbereiten. Version 4.0 führte die neue Integrierte Entwicklungsumgebung Developer Studio ein.

Die Versionen ab 2002 sind in der Lage, außer der MFC 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++ als C++/CLI zur Verfügung.

Seit 2012 ist die Entwicklung von Window Store Apps möglich, die nicht auf dem Win32-API, sondern auf der neuen Windows Runtime Schnittstelle aufbauen. Ab 2015 werden alle neuen API Modelle durch die Universal Windows Platform zusammengefasst, die ebenfalls durch Visual C++ programmiert werden kann. Eine Spracherweiterung namens C++/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 von ARM64 als Hostplattform für Visual Studio unter Windows 11, in der nativer C++ Code auf ARM64 Hardware entwickelt und ausgeführt werden kann. (Debugging von ARM32 und ARM64 Code war zuvor nur per Remote-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

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_VER 800 als Nachfolger von Microsoft C/C++ 7.0 mit einer _MSC_VER von 700.
Weitere Informationen Titel, Version ...

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 auf 14 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).

Weitere Informationen Titel, Studio Version ...
Remove ads

C und C++ Standard Unterstützung

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.

Remove ads

Unterstützte C++ Zielplattformen

  • 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]
  • .NET CLI (Unmanaged-, Pure- und Safe-Mode)
  • Microsoft-POSIX (Optionale Unix Dienste ab Windows NT 4, nur bis einschließlich Windows 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)
Remove ads

Literatur

Einzelnachweise

Loading content...
Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads