Vai al contenuto
eLearner.app

Corso interattivo

Corso C++

Impara il C++ moderno da zero con esercizi guidati, controllo statico e integrazione con Compiler Explorer: dalle basi della sintassi e i tipi di dato fino alle classi e la programmazione orientata agli oggetti.

Verifica statica via parole chiave + esecuzione su Compiler Explorer (un click per copia codice + apertura).

01 · Fondamenti di C++

3 lezioni

Le fondamenta: variabili, tipi di dato primitivi, operatori aritmetico-logici e gestione di input/output con std::cout e std::cin.

  1. 1.1Variabili e tipi di datoTipi primitivi (int, double, char, bool) e oggetti complessi (std::string). Dichiarazione, inizializzazione e scoping.~10 min
  2. 1.2OperatoriOperatori aritmetici, relazionali, logici e di assegnamento. Precedenza ed espressioni.~8 min
  3. 1.3Input/Output e streamGli stream standard della libreria iostream: inviare output con std::cout e leggere input con std::cin.~10 min

02 · Controllo del flusso

3 lezioni

Espressioni condizionali per prendere decisioni e cicli iterativi per ripetere istruzioni.

  1. 2.1Istruzioni condizionali (if-else)Controllare l'esecuzione condizionale con costrutti if, else if ed else.~10 min
  2. 2.2Cicli iterativiRipetere blocchi di codice con cicli for, while e do-while.~12 min
  3. 2.3L'istruzione switchGestire branching multipli in modo ordinato basandosi su valori costanti interi o char.~8 min

03 · Funzioni e Riferimenti

2 lezioni

Scomporre il codice in blocchi riutilizzabili e comprendere come C++ passa i dati in memoria.

  1. 3.1Funzioni baseDichiarare e definire funzioni. Parametri di input, tipo di ritorno ed esecuzione di base.~10 min
  2. 3.2Passaggio per valore e riferimentoCopie in memoria vs alias con l'operatore di riferimento (&). Modificare parametri esterni.~12 min

04 · Programmazione Orientata agli Oggetti

2 lezioni

Introdurre le classi, l'incapsulamento e la gestione automatica delle risorse.

  1. 4.1Classi e OggettiLa sintassi class, membri dato e funzioni membro. Access specifiers public e private per l'incapsulamento.~12 min
  2. 4.2Costruttori e DistruttoriInizializzare lo stato dell'oggetto al momento della creazione e pulire le risorse alla distruzione.~12 min

05 · Strutture Dati e Puntatori

2 lezioni

Gestire collezioni di dati e comprendere il funzionamento della memoria fisica con i puntatori.

  1. 5.1Array e VettoriArray statici C-style e vettori dinamici std::vector. Aggiunta, accesso e manipolazione di collezioni di dati.~12 min
  2. 5.2PuntatoriIndirizzi di memoria, operatori di riferimento (&) e dereferenziazione (*). Utilizzo di nullptr per la sicurezza.~15 min

06 · Ereditarietà e Polimorfismo

2 lezioni

Estendere classi esistenti ed implementare comportamenti polimorfici tramite funzioni virtuali ed ereditarietà.

  1. 6.1Ereditarietà in C++Creare gerarchie di classi con ereditarietà public, comprendere lo specifier protected e richiamare i costruttori della classe base.~12 min
  2. 6.2Polimorfismo e funzioni virtualiRisolvere metodi a runtime usando la parola chiave virtual, comprendere i distruttori virtuali e le classi astratte pure.~15 min

07 · Smart Pointers

2 lezioni

Gestione moderna e sicura della memoria dinamica senza leak grazie ai puntatori intelligenti della libreria standard.

  1. 7.1std::unique_ptr e std::shared_ptrGarantire la proprietà esclusiva di una risorsa con unique_ptr o condivisa con conteggio dei riferimenti tramite shared_ptr.~12 min
  2. 7.2std::weak_ptrRisolvere dipendenze cicliche e riferimenti non proprietari associati a risorse gestite da shared_ptr.~12 min

08 · Templates

2 lezioni

Introdurre la programmazione generica scrivendo funzioni e classi riutilizzabili indipendenti dai tipi di dato.

  1. 8.1Funzioni TemplateScrivere funzioni generiche definendo parametri di tipo template e comprendere la deduzione dei tipi operata dal compilatore.~12 min
  2. 8.2Classi TemplateImplementare strutture dati e classi generiche parametrizzate rispetto al tipo di dato contenuto.~15 min