Download de presentatie
De presentatie wordt gedownload. Even geduld aub
GepubliceerdRebecca Smeets Laatst gewijzigd meer dan 10 jaar geleden
1
Looking at Code Size and Performance Kevin Muys
2
Hoe efficiënt is C++ vergeleken met C Hoe beïnvloed C++ het benodigde geheugen Oplossingen voor de problemen Besluit
3
C++ gebruiken zoals C => geen extra overhead Verbeterde type checking Object Georiënteerd -> performantieproblemen? Makkelijk hergebruik van code Makkelijker onderhoud
4
Hoe efficiënt is C++ vergeleken met C Hoe beïnvloed C++ het benodigde geheugen Oplossingen voor de problemen Besluit
5
Templates Inline functies Virtuele functies Inheritance Gedupliceerde debug informatie
6
1 klasse of functie voor verschillende datatypes Templates delen of niet? -> compiler beslist
7
Keyword inline Geen functieoproep nodig Soms onmogelijk om te inlinen - bij recursieve oproep - bij een complexe flow-of-control => geen performantiewinst + meer code
8
Via virtuele functie tabellen
9
Sommige compilers: Overal creëren waar ze opgeroepen worden Beter: Enkel creëren waar ze gedefinieerd worden
10
Sommige compilers: Voor elke afgeleide klasse -> kopie van de virtuele basis klasse Beter: 1 virtuele basis klasse
11
Vroeger: Debug info voor alles in included file, ook als het niet werd gebruikt =>Link tijd Debug tijd Hoeveelheid code
12
Hoe efficiënt is C++ vergeleken met C Hoe beïnvloed C++ het benodigde geheugen Oplossingen voor de problemen Besluit
13
Snellere compileer en link tijden Minder code
14
Vroeger van C++ -> C omzetten Nu rechtstreeks naar assembly Enkel rekening houden met gebruikte functies => link tijd
15
Compiler: Zorgen voor maar 1 virtuele functie tabel en 1 virtuele basis klasse Linker: Gedupliceerde code en data samen nemen Niet gebruikte code negeren
16
C++ standaard taal voor programmeren van embedded systemen Compilatie technieken moeten zorgen voor compacte code C++ en C verschillende compileertechnieken Vragen?
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.