Jump to content

[TUT] [C++] Het begin


Recommended Posts

Geplaatst:

Tutorial C++ ~ Het Begin

Door Megadreams



Wat heb ik nodig?

~ Een computer/laptop.

~ Een C++ Compiler (zelf raad ik Microsoft Visual C++ aan).

~ Geduld.



Het Begin

C++ is niet iets waar je zomaar mee begint, je kan beter eerst VB en C# leren en uitproberen voor je met C++ begint, C++ is zowat de moeilijkste programmeertaal dat er is.



Programma #1 ~ Win32 Console Application ~ Hello World



screen11.png

! Dit kleine stukje is enkel van toepassing op Microsoft Visual C++ - Vanaf de code geld het weer voor alle compilers. !



Klik op "File" in het menu vanboven:

screen1.png



Ga dan met je muis over "New" en selecteer dan "Project...":

screen2.png



Dit schermpje zal dan openen:

screen3.png



Klik net als op de screen hierboven op Win32 Console Application, voer vanonder een toepasselijke naam in bij "Name:", ik zal TestProgramma als naam nemen:

screen4.png



Klik dan op "OK", er zal dan een "Wizard" openen:

screen5.png



Klik op "Next >", je zal op de volgende pagina terecht komen, vink Empty project aan net als in de screen hieronder:

screen6.png



Klik nu op "Finish":

screen7.png



Leuk maar waar vul ik de code nu in, daarvoor gaan we een .cpp bestand aanmaken, klik vanboven in het menu "Project" aan:

screen8.png



Klik nu op "Add New Item..." er zal zal een schermpje openen, selecteer "C++ File (.cpp)" en voer vanonder bij "Name:" een naam in, wij zullen nu dezelfde naam als het project kiezen: TestProgramma:

screen9.png



Klik nu op 'Add":

screen10.png



En nu kunnen we eindelijk aan de code beginnen.



! Hieronder is weer van toepassing op alle C++ compilers. !



Oke we gaan dus een console maken die de tekst "Hello World!" zal weergeven.

We beginnen met het includen van "iostream" voor enkele functies te kunnen gebruiken, dit doen we doormiddel van de functie "#include", de naam zet je tussen een < en een >, als we dit toepassen krijgen we dit:

#include <iostream>



We zullen nu zorgen dat de functies geactiveerd zullen worden doormiddel van "using" en "namespace":

using namespace std;



We zullen nu zorgen dat het programma ergens kan beginnen, dus een procedure, deze zullen we "main" noemen en beginnen we ook met "int":

int main()
{

}



Dit is onze huidige code:

#include <iostream>
using namespace std;

int main()
{

}



We gaan nu tussen de { en de } van main verder werken, we gaan nu zorgen dat de tekst "Hello World!" in de console word geschreven dit doen we doormiddel van "cout" en daarna "<<" dit zorgt ervoor dat de tekst nog hoort bij cout, en omdat "Hello World!" een tekst is zetten we die tussen " ", je krijgt dus dit als je het toepast:



cout << "Hello World!";



We zullen nu een loopje maken die blijft doorgaan en waarin we simpelweg true zullen gebruiken. Deze is vanzelfsprekend dus altijd "true" oftewel "waar". We willen dit gebruiken omdat anders de console meteen afsluit en dit willen we natuurlijk niet, een loop die moet blijven doorgaan zolang wat tussen de ( ) staat nog waar is beginnen we met while (), we willen dat de loop eeuwing blijft duren, we krijgen dit als we het toepassen:



while (true){}



We voegen voor de } van de procedure "main" nog return 0; deze functie kan iets returnen in dit geval 0:

return 0;



Dit alles tesamen vormt deze code:

#include <iostream>
using namespace std;

int main()
{
   cout << "Hello World!";
   while (true){}
   return 0;
}



Er rest ons nog maar 1 ding, debuggen oftewel compilen, en bij de meeste compilers moet je nog eerst builden zoals in Microsoft Visual C++, dit doe je door op Debug te klikken en dan op Build Solution en bij oudere versies doe je dit bij Build, compilen doe je doormiddel vanboven op het groene pijltje te klikken, of via Debug en dan Start Debugging.



Programma #2 ~ Win32 Console Application ~ Getallenreeks via loop

screen12.png

We gaan nu een programmatje maken die van 1 tot 10 telt door middel van een loop, we gaan stap voor stap bespreken wat te doen.

We gaan eerst "iostream" weer includen, want dit hebben we ook in deze tutorial weer nodig:

#include <iostream>



We gaan ook dezelfde namespace gebruiken:

using namespace std;



We gaan als procedure "main" namen:

int main()
{

}



Nu gaan we de integer "getal" aanmaken die we later zullen gaan gebruiken we zetten er het getal 0 in:

int getal = 0;



We zullen nu de loop maken deze word gemaakt door middel van "while" een loop blijft actief zolang de waarde die tussen de ( ) staat waar is, we gaan in de loop zetten dat hij actief moet zijn zolang "getal" kleiner is dan 10, hij gaat tot 10 tellen omdat we het getal pas verhogen in de loop zelf:

while(getal < 10)
{

}



We gaan "getal" met 1 verhogen:

getal += 1;



We gaan nu het getal op het scherm schrijven en een tweede "tekst" in dezelfde cout zetten dit doen we door middel van nog een <<, tussen de " " staat "\n" wat staat voor een enter dus een nieuwe lijn:

cout << getal << "\n";



We gebruiken na de loop "cin.get()" dit zorgt dat hij pas verder gaat als je "enter" indrukt:

cin.get();



En nu gaan we nog een return uitvoeren:

return 0;



Dit alles tesamen geeft:

#include <iostream>
using namespace std;

int main()
{
int getal = 0;
while(getal < 10)
{
	getal += 1;
	cout << getal << "\n";
}
cin.get();
return 0;
}



Programma #3 ~ Win32 Console Application ~ Het opslagen en uitschrijven van een integer

screen13.png

screen14.png

Ik ga jullie nu leren hoe een integer op te slaan die de gebruiker moet intypen en deze vervolgens in de console te schrijven.

! Let op dat strings niet hetzelfde zijn en pas later komen, strings hebben een extra include nodig !

We beginnen weer met "iostream" te includen:

#include <iostream>



En dan natuurlijk de namespace:

using namespace std;



We gaan als procedure ook weer "main" kiezen:

int main()
{

}



Nu gaan we de integer "getal" aanmaken met "int" we gaan hier nog niets inzetten:

int getal;



We gaan nu de gebruiker vragen om een getal in te voeren dit doen we doormiddel van "cout" en dan "<<" om te zorgen dat de tekst bij "cout" word gevoegd:

cout << "Voer een getal in: ";



Nu zullen we zorgen dat hij het ingevoerde getal zal opslaan in "getal", het programma zal blijven wachten tot je iets ingevoerd hebt en op "enter" gedrukt hebt, dit doen we doormiddel van cin en dan ">>" de pijltjes zijn dus omgedraaid en niet als bij "cout":

cin >> getal;



We gaan nu het ingevoerde getal in de console schrijven maar eerst gaan we de tekst "Je voerde het volgende getal in: " op het beeld schrijven en daarna het "getal" voor het getal gebruiken we dezelfde cout we gebruiken gewoon weer "<<":

cout << "Je voerde het volgende getal in: " << getal;



We gaan in dit programmatje weer opnieuw de oneindige loop gebruiken, als we "cin.get();" zouden gebruiken en je drukt op "enter" om je invoer te bevestigen dan word "cin.get();" ook meteen geactiveerd en zal het programma meteen afsluiten, bij de loop is dit niet het geval.

while(true){}



En dan weer de return:

return 0;



En dit alles vormt:

#include <iostream>
using namespace std;

int main()
{
int getal;
cout << "Voer een getal in: ";
cin >> getal;
cout << "Je voerde het volgende getal in: " << getal;
while(true){}
return 0;
}



Programma #4 ~ Win32 Console Application ~ Het opslagen en uitschrijven van een string

screen15.png

screen16.png

We gaan 2 includes includen namelijk "iostream" en "string" de include string is nodig voor de strings:


#include <iostream>
#include <string>



Dan weer de namespace:


using namespace std;



Nu gaan we de procedure "main" weer aanmaken:


int main()
{

}



Nu gaan we geen int gebruiken maar string en deze string noemt "woord":


string woord;



We gaan nu de gebruiker vertellen dat hij een woord/tekst moet invoeren, dit doen we met "cout":


cout << "Voer een woord/tekst in: ";



Nu gaan we het woord of de tekst ophalen via cin:


cin >> woord;



En nu gaan we het ingevoerde woord/tekst op het scherm schrijven:


cout << "Je voerde het volgende woord/tekst in: " << woord;



En nu gaan we onze welbekende loop weer gebruiken want als je cin.get() zou gebruiken zou hij net als bij het vorige programmatje meteen afsluiten want je drukt immers nog die toets "enter" in:


while (true){}



Nu sluiten we af met een return:

return 0;



Dit alles samen vormt:


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

int main()
{
string woord;
cout << "Voer een woord/tekst in: ";
cin >> woord;
cout << "Je voerde het volgende woord/tekst in: " << woord;
while (true){}
return 0;
}



______________

! Deze tutorial is nog niet af. !



Ik hoop dat jullie veel geleerd hebben uit deze tutorial, en veel succes met programmeren in C++.

MVG, Megadreams

Geplaatst: (bewerkt)

Het bovenstaande word ook nog aangevuld!

! Enkel voor Microsoft Visual C++ !

Programma #1 ~ Windows Forms Application ~ Hello World

screen17.png

screen18.png

Oke eerst openen we Microsoft Visual C++ en klikken we links vanboven op "File":

screen19.png

Ga nu met je muis over "new" en klik op "Project...":

screen20.png

Dit schermpje zou nu moeten openen:

screen21.png

Selecteer "Windows Forms Application" en vul bij "Name" de naam van je programma in, ik noem dit programma "Hello World":

screen22.png

Klik nu op "Ok" en het Project word aangemaakt je zou nu dit moeten zien:

screen23.png

Je ziet nu het schermpje van Form1 staan waarin je gaat werken we zullen eerst de titel wijzigen klik op je rechtermuisknop op de Designer en klik op "Properties" en de properties zullen verschijnen en we gaan "Text" wijzigen in Hello World:

screen24.png

Nu gaan we een "label" en een "button" plaatsen vanuit de toolbox ook zullen we de grootte van het schermpje aanpassen:

screen25.png

We gaan nu de tekst van de label wijzigen we drukken op de rechtermuisknop op de label en klik op "Properties", we passen "Text" aan in de properties naar "Deze tekst veranderd.":

screen26.png

Hetzelfde doen we bij de button en veranderen we "Text" naar "Klik Hier":

screen27.png

We gaan nu beginnen met de code dubbelklik op de button en Form1.h opent:

screen28.png

Zoals je misschien al is opgevallen staan in de code je properties maar wij gaan ons concentreren op deze code die je automatisch te zien kreeg als je dubbelklikte op de button:

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
		 }
};

Dit word opgeroepen wanneer er op de button geklikt word, we gaan dit gebruiken om de tekst van "label1" te wijzigen als we op de button hebben geklikt.

Zet tussen de { en } de volgende code:

label1->Text = "Hello World!";

Ik zal een beetje uitleg geven "label1" is de label die we in de designer hebben geplaatst, de "->" staat gelijk aan . in Visual Basic en C#, "Text" is de tekst die in "label1" staat, we gaan deze veranderen doormiddel van " = " en tussen de 2 "" achter de " = " plaatsen we de nieuwe tekst in dit geval "Hello World!" en we sluiten dit af met een ";".

Dit zou er nu moeten staan:

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
			 label1->Text = "Hello World!";
		 }
};

Debug nu doormiddel van het groene pijltje vanboven of F5 of "Debug" -> "Start Debugging".

Je hebt nu je eerste Windows Forms Application in C++ gemaakt.

Bewerkt: door Megadreams
Geplaatst: (bewerkt)

Voorbehouden Voor : Forms ~ Niet Windows Forms Application.

Bewerkt: door megadreams
Geplaatst:

Mooie tutorial. Fijn dat er toch nog tutorials gemaakt worden. Hopelijk komen er nog een paar? :)

Geplaatst:

Mooie tutorial. Ik ken dat wel, dat als de tekst door die Rich Text Editor ineens gecodeerd wordt...:7 Maar het is een goede tutorial voor de beginnende C++ gebruikers!:tu:

Geplaatst: (bewerkt)

Mooie tutorial. Fijn dat er toch nog tutorials gemaakt worden. Hopelijk komen er nog een paar? :)

Mooie tutorial. Ik ken dat wel, dat als de tekst door die Rich Text Editor ineens gecodeerd wordt...:7 Maar het is een goede tutorial voor de beginnende C++ gebruikers!:tu:

Dankje, er zal nog veel bij komen, we zullen na de consoles ook de forms gaan bespreken.

EDIT: Vraag aan admins/moderators kunnen jullie dat probleem met die

 tag en eventueel verdwijnende enters door bewerking vermijden, waarom is er geen optie voor een gewone tekst editor ...
Bewerkt: door megadreams
Geplaatst: (bewerkt)

Paar opmerkingen.

Waarom definieer je die integer b buiten de functie main? Als hij alleen gebruikt wordt in de functie main is het veel veiliger om hem daar te definiëren zodat je hem vanuit andere functies niet per ongeluk aanpast of wat dan ook.

Daarnaast waarom gebruik je niet cin.get(); ipv een oneindige loop? Oneindige lussen zijn nou niet de mooiste dingen en kunnen bij complexere programma's ook problemen opleveren en dan hoef je de integer b überhaupt niet te definiëren.

Dus, mijn suggestie:

#include <iostream>
using namespace std;

int main(){
cout << "Hello World!";

cin.get();
return 0;
}

Bewerkt: door Mania-92
Geplaatst: (bewerkt)

Mooie tutorial. Fijn dat er toch nog tutorials gemaakt worden. Hopelijk komen er nog een paar? :)

Mooie tutorial. Ik ken dat wel, dat als de tekst door die Rich Text Editor ineens gecodeerd wordt...:7 Maar het is een goede tutorial voor de beginnende C++ gebruikers!:tu:

Dankje, er zal nog veel bij komen, we zullen na de consoles ook de forms gaan bespreken.

EDIT: Vraag aan admins/moderators kunnen jullie dat probleem met die

 tag en eventueel verdwijnende enters door bewerking vermijden, [b]waarom is er geen optie voor een gewone tekst editor[/b] ...

Die is er wel! Die gebruik ik nu.

En overigens heb ik dit laatst al aan Joriz gevraagd hoe dat zit en hij zei dat hij dat zo snel mogelijk probeert te verhelpen. Om de irritante codes te voorkomen heb ik de Rich Text Editor uitgeschakeld. Is wel wat irritant lezen, maar het helpt!_O_ Schakel dus de Rich Text Editor uit om het probleem met de codes te voorkomen.;)

Bewerkt: door Grand Theft Auto TOM
Geplaatst:

We willen het even nog simpel houden in de eerste tut he ;)

Die knop moet nog worden behandeld ;)

Je vindt jou manier met while-loops en integers simpeler dan 1 functie aanroep? :puh:

Geplaatst:

We willen het even nog simpel houden in de eerste tut he ;)

Die knop moet nog worden behandeld ;)

Je vindt jou manier met while-loops en integers simpeler dan 1 functie aanroep? :puh:

niet echt maarja het is handig om een loop al eens te zien omdat we die in het volgende programma al eens echt gaan gebruiken.

En we willen nog niet dat je op enter moet kunnen drukken, daarom dus die loop.

Geplaatst:

hey,

mooie tutorial! Wou zelf even een stukje proeven uit C++, en met jouw tut gaat het snel! vind de codes wel wat moelijk, en het zijn voor mij meer wiskundige dingetjes :D

Geplaatst:

hey,

mooie tutorial! Wou zelf even een stukje proeven uit C++, en met jouw tut gaat het snel! vind de codes wel wat moelijk, en het zijn voor mij meer wiskundige dingetjes :D

Dankje, en dit is nog het simpelste, bij de consoles kan het zelfs al moeilijk worden maar bij de forms al zeker. (tenzij dan de Windows Forms Application die erg veel op VB lijkt maar dan in C++).

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.
×
×
  • Create New...