Struttura del corso
- Cos'è un sistema embedded?
- Definizione semplice
- Alcune pietre miliari
- Caratteristiche
- Perché usare C++?
- Confronto con C
- C: Un sottoinsieme di C++ – quasi
- Prestazioni
- Funzionalità "gratuite" aggiunte
- Perché non usare C++?
- Classi
- Variabili membro
- Variabili di istanza
- Variabili di classe
- Funzioni membro
- Funzioni di istanza
- Funzioni di classe
- Metodi impliciti
- Costruttore
- Inizializzazione
- Delega
- Distruttore
- Operatore di copia
- Costruttore
- Semantiche di movimento (Move Semantics) – evitare copie profonde non necessarie
- struct in C++
- Package/Namespace
- Variabili membro
- Ereditarietà
- Introduzione
- Implementazione
- Prestazioni
- Ereditarietà multipla
- Ereditarietà virtuale
- Polimorfismo
- Introduzione
- Funzione virtuale
- Distruttore virtuale
- Implementazione
- Runtime Type Information, RTTI
- Prestazioni
- Template
- Introduzione
- Template di funzione
- Template di classe
- Template variadici
- Code Bloat
- Strategie di implementazione
- Template Meta Programming
- Template rispetto all'ereditarietà?
- Gestione degli errori
- Gestione delle eccezioni
- Problemi di prestazioni
- Implementazione
- Codice inline
- Quando usarlo?
- Strategie
- Avvio (Start-up)
- Avvio del sistema
- Parte C
- Parte C++
- Biblioteca standard
- Standard Template Library, STL
- Biblioteca iostream
- Principali estensioni apportate alla STL grazie a C++11:
- Semantiche di movimento
- Template variadici
- Concorrenza
- Gestione della memoria
- Modello di memoria C++
- Tipi stdint
- Tipi atomici e relative operazioni
- Strategie
- Variabili
- Placement new
- Gestione della memoria definita dall'utente
- Modello di memoria C++
- Interoperabilità tra C e C++
- Name Mangling
- Inizializzazione statica
- Memoria dinamica
- Contenuto di struct
- POD – Plain Old Data type
- Design Pattern
- RAII – Resource Acquisition Is Initialization
- I/O Memory-mapped
- Interruzioni (Interrupt)
- Inizializzazione di oggetti statici
Requisiti
Non sono richiesti requisiti specifici per partecipare a questo corso.
Recensioni (3)
Spiegazione dettagliata, ripetizione sottile dei punti che ha davvero consolidato la conoscenza. La volontà di Rod di verificare le domande occasionalmente oscure che abbiamo sollevato, per essere sicuro che le sue risposte fossero al 100% corrette. Inoltre, il suo interesse nel discutere i pro e i contro di stili di codifica alternativi, in modo che non solo imparassimo come usare C++ nel modo previsto, ma anche perché dovrebbe essere fatto in quel modo.
Nick Dillon - cellxica Ltd
Corso - Using C++ in Embedded Systems - Applying C++11/C++14
Traduzione automatica
Ho apprezzato il tempo dedicato per risolvere gli esercizi. Questo è stato molto utile perché ci ha permesso di prendere il tempo necessario per riflettere sulle nostre soluzioni e implementarle.
Valeriu - Siemens
Corso - Using C++ in Embedded Systems - Applying C++11/C++14
Traduzione automatica
I dettagli su come il compilatore si comporta a seconda dell'uso della sintassi. Le sezioni "Quiz" sono molto stimolanti.
Andrea Pomatto
Corso - Using C++ in Embedded Systems - Applying C++11/C++14
Traduzione automatica