Delphi XE2 Foundations
Home
About the author
Editions
Errata
FAQ
Feedback
Screenshots
Table of contents Chapter 1 – Language basics Chapter 2 – Simple types: enumerations, numbers and date/times Chapter 3 – OOP fundamentals Chapter 4 – Going further with classes and records Chapter 5 – String handling Chapter 6 – Arrays, collections and enumerators Chapter 7 – Basic I/O: writing console applications and working with the file system Chapter 8 – Advanced I/O: streams Chapter 9 – ZIP, XML, Registry and INI file support Chapter 10 – Packages Chapter 11 – Dynamic typing and expressions Chapter 12 – Runtime type information (RTTI) Chapter 13 – Working with native APIs Chapter 14 – Writing and using dynamic libraries Chapter 15 – Multithreading
Chapter 1 – Language basics
Chapter 2 – Simple types: enumerations, numbers and date/times
Chapter 3 – OOP fundamentals
Chapter 4 – Going further with classes and records
Chapter 5 – String handling
Chapter 6 – Arrays, collections and enumerators
Chapter 7 – Basic I/O: writing console applications and working with the file system
Chapter 8 – Advanced I/O: streams
Chapter 9 – ZIP, XML, Registry and INI file support
Chapter 10 – Packages
Chapter 11 – Dynamic typing and expressions
Chapter 12 – Runtime type information (RTTI)
Chapter 13 – Working with native APIs
Chapter 14 – Writing and using dynamic libraries
Chapter 15 – Multithreading
A language descended from Pascal A mixed object oriented/procedural language A native code compiler
The ‘do nothing’ program More comments
A console ‘hello world’ Whitespace Doing a few more things
Reserved words Casing and naming conventions
Common types Variants and pointers Custom types
Ordinal types Value types Reference types Managed types Pointer types Generic types
Variables Constants — ‘true’ vs. ‘typed’ ‘Writeable typed constants’ (static variables)
While and repeat/until loops For/in loops For/to and for/downto loops Jump statements — Break, Continue and Goto
If and if/else statements Case statements
Parameter passing Constant parameters Variable parameters Out parameters Default parameter values (optional parameters) Function return values Prematurely exiting from a sub-routine Overloading Nested routines Procedural pointers
Interface vs. implementation sections Declaring unit members The uses clause Exporting symbols Forward declarations Unit file lookup Source files and compiled units The circular unit problem
Try/except blocks Raising exceptions Ensuring clean up code runs: try/finally blocks
Allocating memory dynamically Working with pointers