Introductie Microsoft Visual C++ 2010.

© Harry Broeders.

Deze pagina is bestemd voor studenten van de Haagse Hogeschool - Academie voor Technology, Innovation & Society Delft.

Inleiding.

Deze handleiding beschrijft hoe je Microsoft Visual C++ 2010 kunt gebruiken om C++ programma's te ontwikkelen en te debuggen (logische fouten op te sporen). Op de Haagse Hogeschool gebruiken we Visual Studio Express 2012 for Windows Desktop, zie hier. Als je Microsoft Visual C++ 2010 wilt gebruiken om C programma's te ontwikkelen kijk dan hier.

Downloaden en installeren.

Je kunt een gratis versie van Microsoft Visual C++ 2010 (de zogenaamde Express Edition) downloaden vanaf http://www.microsoft.com/visualstudio/eng/downloads#d-2010-express. (Klik op de + bij Visual C++ 2010 Express en vervolgens op Install now.)

Eenvoudig C++ programma compileren en uitvoeren met Visual C++ 2010.

Thuis kun je gebruik maken van de gratis versie van Visual C++ 2010, de zogenoemde Express Edition. In lokaal 1.052 gebruik je de Professional Edition. Deze handleiding is gemaakt met de Express Edition. Als je met de Professional Edition werkt kunnen sommige schermen er iets anders uitzien. Start Visual C++ 2010 (Express Edition of Professional Edition) en kies menu File => New => Project... of klik op het knopje New Project (links  boven).

[Image]

Kies (klik op) Win32 en vervolgens Win32 Console Application. Type de naam van het programma in, bijvoorbeeld opd1a, en klik op OK.

[Image]

Klik vervolgens op Next, vink het hokje Empty Project aan en klik op Finish.

[Image]

Klik nu op het knopje Add New Item (tweede knopje, links boven).

[Image]

Kies (klik op) Code en vervolgens op C++ File. Type de naam van het sourcebestand in, bijvoorbeeld main

[Image]

Type nu de code voor het programma in:

#include <iostream>
#include <string> 
using namespace std;

int main () {
   cout<<"Geef je email adres: ";
   string mailAdres;
   cin>>mailAdres;
   string::size_type indexAapje = mailAdres.find("@");
   if (indexAapje != string::npos) {
      cout<<"Gebruiker: "
          <<mailAdres.substr(0, indexAapje)
          <<endl;
      cout<<"Machine:   "
          <<mailAdres.substr(indexAapje+1)
          <<endl;
   }
   else {
      cout<<mailAdres<<" is geen geldig email adres!"<<endl;
   }
   cout<<"Druk op de return-toets."<<endl;
   cin.get();
   cin.get();
   return 0;
}

Merk op dat Visual C++ je helpt bij het typen. Als je bijvoorbeeld mailAdres. typt dan laat Visual C++ zien welke messages je naar dit object van de class string kunt sturen.

[Image]

Klik nadat je het hele programma heb ingetypt op het Start Debugging knopje.

[Image]

Visual C++ snapt zelf dat het programma eerst gecompileerd moet worden.

[Image]

Zet een vinkje bij "Do not show this dialog again" en klik op Yes. Als het goed is wordt het programma nu gecompileerd en uitgevoerd.

[Image]

Type je mailadres in en kijk wat er gebeurd. Druk ten slotte op return om het programma te stoppen.

Debuggen.

Je kunt het programma ook stap voor stap uitvoeren. Dat is erg handig als je een logische fout in je programma wilt opsporen.

Met de functietoets F10 (Step Over) kun je stap voor stap door het programma lopen. Als je 1x op F10 drukt stopt het uitvoeren bij de main functie. Een geel pijltje geeft aan waar de uitvoering gestopt is.

[Image]

Als je daarna 4x op F10 drukt worden de eerste 3 regels van main uitgevoerd. Bij het uitvoeren van de regel cin>>mailAdres; komt het console window automatisch naar voren zodat je de invoer kunt intypen.

[Image]

Druk op enter en ga weer terug naar Visual C++. Als je vervolgens nogmaals op F10 drukt dan wordt de volgende regel uitgevoerd:

string::size_type indexAapje = mailAdres.find("@");

Merk op dat je de lokale variabelen in het window links onder kunt zien.

[Image]

Je ziet de ingevoerde string mailAdres en ook de door find gevonden waarde van indexAapje.

Als je (later) een eigen functie of memberfunctie hebt geschreven en je wilt dat deze functie ook stap voor stap wordt uitgevoerd dan moet je op F11 (Step Into) drukken op het moment dat deze functie wordt aangeroepen.

Standaard C++.

Als je zeker wilt weten dat een programma dat je ontwikkeld met Visual C++ ook werkt met andere compilers (bijvoorbeeld gcc) dan moet je geen gebruik maken de specifieke Microsoft extentions (uitbreidingen).

Dit kun je instellen bij de properties van een project. Rechts klik op de titel van het project (opd1a) in de Solution Explorer en kies Properties... om het property window te openen. Klik op Configuration Properties, C/C++, Language en zet "Disable Language Extentions" op "Yes".

[Image]