Terug naar de inhoudsopgave

Stijl

Deze pagina beschrijft de stijlregels waaraan je programma's moeten voldoen. N.B.: Deze pagina is nog niet helemaal compleet.

Commentaar

Bestanden

In elk bestand moet helemaal bovenaan in een block comment informatie opgenomen worden over het bestand. Daarin moet minstens vermeld staan tot welk project cq. programma het bestand behoort en wie de code in het bestand heeft/hebben geprogrammeerd.

Voorbeeld:

/**********************************************************
	Bestand:   Main.cpp
	Project:   Boswandeling
	
	Copyright: (c) 2002 Joost Ronkes Agerbeek
	
	Auteur:    Joost Ronkes Agerbeek <joost@ronkes.nl>
	Datum:     16 december 2002
**********************************************************/

Functies

Elke functie moet van commentaar zijn voorzien. Dit commentaar moet boven de functie staan en in ieder geval de volgende elementen bevatten.

Voorbeeld:

/**
 * Berekent de absolute waarde van het opgegeven getal.
 *
 * @param	getal	het getal waarvan de absolute waarde
 *       	     	berekent moet worden.
 *
 * @return	de absolute waarde van het opgegeven getal
 */
int AbsoluteWaarde(int getal)
{
	// is het getal positief?
	if (getal >= 0)
	{
		// ja, getal is al absoluut
		return getal;
	}
	
	// bereken absolute waarde
	return (getal - (2 * getal));
}

Code

In principe is elk statement voorzien van een line comment boven het statement. Bijvoorbeeld:

// verhoog score
Score++;

Statements die logischerwijs bij elkaar horen en waarvoor een line comment voor het tweede statement overbodig is, krijgen maar één line comment boven het eerste statement. Als richtlijn kun je aanhouden dat je niet meer dan twee statements samen mag nemen. Bijvoorbeeld:

// vraag woord van gebruiker
cout << "Voer een woord in: ";
cin >> myWoord;

Variabelen krijgen geen apart commentaar. Een variabele wordt gedeclareerd op het moment dat hij nodig is en staat direct onder het commentaar van het volgende statement. Bijvoorbeeld:

// vraag woord van gebruiker
string myWoord;
cout << "Voer een woorf in: ";
cin > > myWoord;

Naamgeving

Functies

Functienamen staan in zogenaamde Pascal-casing. De naam begint met een hoofdletter. Als de naam uit meerdere woorden bestaat, krijgt elk nieuw woord een hoofdletter aan het begin. De naam moet de functie duidelijk omschrijven. Bijvoorbeeld:

void ClearScreen();

De functie main is een uitzondering omdat de taal dat vereist.

Parameters

De naam van een parameter begint met kleine letter. Als de naam uit meerdere woorden bestaat, krijgt elk woord behalve het eerste een hoofdletter aan het begin. De naam van de parameter moet de parameter duidelijk omschrijven. Bijvoorbeeld:

void SplitsTekst(string tekst, int beginTweedeTekst);

Variabelen

Lokale variabelen hebben het voorvoegsel my (kleine letters) en volgen verder de regels van functienamen. Voorbeeld:

int myTotaalScore;

Globale variabelen volgen de regels van functienamen. Voorbeeld:

int AantalLevens;

Whitespace

Spaties

Zowel links als rechts van de volgende (binaire) operatoren moet een spatie staan: + - / * % = && || & | ^ << >>. Bijvoorbeeld:

int myBereking = 5 + 7;
cout << myBerekening;

Tabs

Alle niet-lege regels binnen accolades moeten worden ingesprongen met een tab. Het aantal tabs waarmee een regel wordt ingesprongen, komt overeen met het aantal accoladeparen waarbinnen de regel zich bevindt. Bijvoorbeeld:

int AbsoluteWaarde(int getal)
{
	// is het getal positief?
	if (getal >= 0)
	{
		// ja, getal is al absoluut
		return getal;
	}
	
	// bereken absolute waarde
	return (getal - (2 * getal));
}