Kies uw taal
C++ Cursus
Meer dan 2 miljoen studenten wereldwijd

C++ Cursus

4,6

Beheers C++ van de grond af — van basis-syntax en geheugenbeheer tot templates, gelijktijdigheid en moderne C++23-functies. Deze cursus biedt de technische diepgang en praktische oefening om snelle, veilige en professionele C++-code te schrijven. Of je nu systeemprogrammering, embedded ontwikkeling of high-performance applicaties nastreeft, dit is de complete vaardighedenset die je nodig hebt.

Dedika voor bedrijven

Wat je gaat leren:

Je bouwt een solide basis in C++-syntax, control flow en functies voordat je doorgaat naar pointers, geheugenbeheer en objectgeoriënteerd programmeren. Je beheerst de Standard Template Library, schrijft generieke code met templates en past moderne functies toe zoals lambda's, move-semantiek en gestructureerde bindingen. De cursus behandelt ook foutafhandeling, unit testing, prestatieprofilering, buildsysteem met CMake en professionele praktijken, waaronder versiebeheer en codebeoordeling. Aan het einde heb je de vaardigheden om productiekwaliteit C++-software te ontwikkelen voor een breed scala aan domeinen.

Hoe je praktisch studeert C++ Cursus

Hoe je oefent C++ Cursus

Voor bedrijven die hun team willen trainen

Bij Dedika voor bedrijven bevat de cursus oefeningen en voorbeelden die zijn afgestemd op jouw organisatie en precies zoals jouw bedrijf het nodig heeft.

Klik hier

Cursusinhoud

8 Hoofdstukken • 40 LessenDuur tussen 4 en 360 uren (jij beslist)

Hoofdstuk 1Bekijk details

C++-fundamenten en omgevingsconfiguratie

  • Les 1 • Variabelen, types en letterlijke waarden

    Introduceert fundamentele gegevenstypes, variabeledeclaratie en letterlijke waarden. Bouwt de woordenschat op die nodig is voor alle toekomstige gegevensmanipulatie.

  • Les 2 • De ontwikkelomgeving opzetten

    Installeer compilers, IDE's en buildtools voor C++-ontwikkeling. Biedt de technische basis waarop elk volgend hoofdstuk vertrouwt.

  • Les 3 • Operatoren en expressies

    Verkent rekenkundige, relationele, logische en bitsgewijze operatoren. Operatorprecedentieregels worden toegepast om correcte expressies te schrijven.

  • Les 4 • Basisgrammatica en programmastructuur

    Behandelt de anatomie van een C++-bronbestand, inclusief headers, hoofdfunctie en statements. Koppelt grammaticaregels aan leesbare, compileerbare code.

  • Les 5 • Invoer en uitvoer met iostream

    Leert console-I/O met cin en cout uit de standaardbibliotheek. Maakt interactieve programma's mogelijk die essentieel zijn voor vroege oefeningen.

Hoofdstuk 2Bekijk details

Controlestroom en functies

  • Les 1 • Lussen en iteratie

    Introduceert for-, while- en do-while-lussen naast luscontrolestatements. Herhalingspatronen vormen de basis voor algoritmen in latere hoofdstukken.

  • Les 2 • Bereik, levensduur en opslagklassen

    Legt de reikwijdte en levensduur van lokale, globale en statische variabelen uit. Voorkomt veelvoorkomende bugs veroorzaakt door onbegrepen variabelen zichtbaarheid.

  • Les 3 • Recursie en functie-overloading

    Introduceert recursief probleemoplossen en meerdere functiehandtekeningen met dezelfde naam. Bereidt studenten voor op complexe algoritmische patronen.

  • Les 4 • Functiedeclaratie en -definitie

    Leert hoe functies te declareren, definiëren en aanroepen met parameters en retourtypes. Functies zijn de primaire eenheid van codehergebruik in C++.

  • Les 5 • Conditionele statements

    Behandelt if-, else-if-, else- en switch-constructies voor besluitvorming. Maakt direct logica-gestuurde programma's mogelijk die tijdens de cursus worden gebouwd.

Hoofdstuk 3Bekijk details

Arrays, pointers en geheugen

  • Les 1 • Dynamische geheugentoewijzing

    Leert heap-toewijzing met new en deallocatie met delete. Correct bronnenbeheer voorkomt geheugenlekken in alle toekomstige programma's.

  • Les 2 • Arrays en C-stijl strings

    Behandelt arrays met vaste grootte, multidimensionale arrays en null-getermineerde strings. Legt de laaggelegen datastructuren vast waarop pointers voortbouwen.

  • Les 3 • Referenties en const-correctness

    Onderscheidt referenties van pointers en handhaaft const-gebruik voor veiligheid. Const-correctness is een professionele C++-coderingsstandaard.

  • Les 4 • Overzicht van smart pointers

    Introduceert unique_ptr, shared_ptr en weak_ptr als veiligere alternatieven voor raw pointers. Overbrugt handmatig geheugenbeheer naar moderne C++-idiomen.

  • Les 5 • Pointer-basisbeginselen

    Introduceert pointer-declaratie, adres-van-operator en dereferentie. Pointers staan centraal in dynamisch geheugen en objectgeoriënteerde functies die komen gaan.

Hoofdstuk 4Bekijk details

Objectgeoriënteerd programmeren in C++

  • Les 1 • Polymorfisme en virtuele functies

    Implementeert runtime-polymorfisme via virtuele functies en abstracte klassen. Maakt flexibele, uitbreidbare ontwerpen mogelijk die centraal staan in grote C++-codebases.

  • Les 2 • Overerving en klassehierarchieën

    Modelleert is-a-relaties met behulp van enkele en meervoudige overerving. Legt de hiërarchiestructuur vast die vereist is voor polymorfisme.

  • Les 3 • Operator-overloading

    Maakt het mogelijk dat aangepaste types standaardoperatoren op een natuurlijke en expressieve manier gebruiken. Versterkt inkapseling door logica binnen de klasse te houden.

  • Les 4 • Constructors, destructors en initialisatie

    Leert objectlevenscyclusbeheer via constructors en destructors. Correcte initialisatie voorkomt ongedefinieerd gedrag in complexe programma's.

  • Les 5 • Klassen en objecten

    Behandelt klassedefinitie, gegevensleden, lidfuncties en toegangsspecificatoren. Klassen zijn het primaire abstractiemechanisme in C++.

Hoofdstuk 5Bekijk details

De Standard Template Library

  • Les 1 • Stringverwerking met std::string

    Behandelt std::string-operaties, manipulatie en conversiehulpprogramma's. Vervangt onveilige C-stijl strings door een veilig, functierijk alternatief.

  • Les 2 • STL-algoritmen

    Past sorteer-, zoek-, transformatie- en accumulatiealgoritmen uit <algorithm> toe. Vervangt foutgevoelige handmatige lussen door expressieve one-liners.

  • Les 3 • Associatieve en ongeordende containers

    Introduceert map, set, unordered_map en unordered_set voor sleutelgebaseerde toegang. Maakt snelle opzoekpatronen mogelijk die in praktijktoepassingen worden gebruikt.

  • Les 4 • Sequence-containers

    Behandelt vector, list, deque en array voor geordende gegevensopslag. Het kiezen van de juiste container heeft direct invloed op de programmaprestaties.

  • Les 5 • Iterators en ranges

    Legt iteratorcategorieën, traversatiepatronen en range-gebaseerde operaties uit. Iterators zijn de universele interface tussen containers en algoritmen.

Hoofdstuk 6Bekijk details

Templates en generiek programmeren

  • Les 1 • Concepten en constraints in C++20

    Past C++20-concepten toe om templateparameters te beperken met leesbare vereisten. Produceert duidelijkere foutmeldingen en zelfdocumenterende interfaces.

  • Les 2 • Basisprincipes van template-metaprogrammeren

    Introduceert compile-time-berekening met type traits en constexpr. Maakt zero-cost abstracties en compile-time-validatie mogelijk.

  • Les 3 • Functietemplates

    Introduceert templatesyntaxis voor het schrijven van generieke functies met typeparameters. Elimineert codeduplicatie terwijl volledige typeveiligheid behouden blijft.

  • Les 4 • Klassetemplates

    Breidt templates uit naar klassen, waardoor generieke containers en hulpprogramma's mogelijk worden. Onderbouwt de STL-containers die in het vorige hoofdstuk zijn bestudeerd.

  • Les 5 • Variadische templates

    Behandelt parameter packs en fold-expressies voor template met variabel aantal argumenten. Maakt flexibele API's mogelijk zoals std::tuple en logboekhulpprogramma's.

Hoofdstuk 7Bekijk details

Moderne C++-functies en -idiomen

  • Les 1 • Gestructureerde bindingen en std::optional

    Introduceert gestructureerde bindingen voor tuple-achtige decompositie en optional voor null-bare waarden. Vermindert boilerplate en drukt intentie duidelijk uit.

  • Les 2 • std::variant en std::any

    Behandelt type-veilige unions met std::variant en type-gewiste opslag met std::any. Vervangt onveilige C-unions en void-pointers in moderne code.

  • Les 3 • Concurrency-basisbeginselen met std::thread

    Introduceert thread-creatie, synchronisatie-primitieven en data-race-preventie. Bereidt studenten voor op de ontwikkeling van multi-threaded applicaties.

  • Les 4 • Move-semantiek en rvalue-referenties

    Legt rvalue-referenties, move-constructors en move-toewijzing uit voor prestaties. Elimineert onnodige kopieën in resource-intensieve programma's.

  • Les 5 • Lambda-expressies en closures

    Behandelt lambda-syntax, capture-lijsten en gebruik met STL-algoritmen. Maakt beknopte, inline functieobjecten mogelijk zonder boilerplate.

Hoofdstuk 8Bekijk details

Foutafhandeling, testen en prestaties

  • Les 1 • Profilering en prestatieanalyse

    Past profileringstools toe om hotspots te identificeren en uitvoeringstijd te meten. Data-gestuurde optimalisatie voorkomt voortijdige en misleide afstemming.

  • Les 2 • Unit testing in C++

    Introduceert testframeworks, testcase-ontwerp en testgestuurde ontwikkelingsworkflow. Geautomatiseerde tests verifiëren de juistheid naarmate de code evolueert.

  • Les 3 • Asserties en defensief programmeren

    Gebruikt assert, static_assert en precondition-checks om bugs vroeg te vangen. Defensieve technieken verminderen de debugtijd in grote codebases.

  • Les 4 • Optimalisatietechnieken

    Behandelt cache-vriendelijke gegevensindelingen, algoritmische verbeteringen en compilerhints. Past profileringbevindingen toe om meetbare snelheidswinsten te behalen.

  • Les 5 • Uitzonderingsafhandeling

    Behandelt try-catch-throw, uitzonderingshiërarchieën en uitzonderingsveilig codeontwerp. Correcte foutpropagatie is verplicht in professionele C++-software.

Certificering

Jouw geldig certificaat van voltooiing

Deze cursus is voor jou:

  • Computerwetenschapstudent: gretig om verder te gaan dan pseudocode naar echte programmeertalen.

  • Python- of JavaScript-ontwikkelaar: klaar om te begrijpen wat er onder de abstractie gebeurt.

  • Aspirant-spelontwikkelaar: die de lage-niveaucontrole nodig heeft die C++ uniek biedt.

  • Elektrotechnisch ingenieur: die firmware en stuurprogramma's wil schrijven met moderne taalhulpmiddelen.

  • Carrièreswitcher: gericht op hoogbetaalde systeemprogrammeerrollen vanuit een niet-CS-achtergrond.

  • Hobbybouwer: die microcontrollers en embedded apparaten effectiever wil programmeren.

Wat onze studenten zeggen

Jullie lessen zijn perfect. Ik heb het jaarpakket aangeschaft en heb eindelijk de mogelijkheid om verschillende onderwerpen die mij interesseren te volgen zonder van platform te hoeven wisselen... bedankt voor alles wat jullie doen, ik heb jullie al aan anderen aanbevolen...
Giulio Carlo
Giulio CarloStudent Digitale Marketing
Ik vind het fijn hoe de lessen direct ter zake zijn en hoe ik tussen hoofdstukken kan wisselen en content kan overslaan die ik niet nodig heb.
Mariana Ferres
Mariana FerresStudent Fotografie
Ik vind de content en de manier van presenteren en transcriptie van video's geweldig, wat het proces versnelt!
Luciana Alvarenga
Luciana AlvarengaStudent Nageldesign
Het platform is snel en eenvoudig te gebruiken. De diversiteit aan content en de aanvullende video's helpen enorm bij het leren.
André Felipe
André FelipeStudent Prompt Engineering

Belangrijkste opleidingen

FAQ

Wie is Dedika?

Is het certificaat geldig in Nederland?

Zijn de cursussen gratis?

Wat is de studielast van de cursus?

Hoe zien de cursussen eruit?

Hoe werken de cursussen?

Wat is de duur van de cursussen?

Wat zijn de kosten of prijzen van de cursussen?

Wat is een EAD- of online cursus en hoe werkt het?

PDF-cursus