Introduction
Installation
Registration
How to start
User interface
Windows
Log panel
User options
Window positions
Customization
Translation options
Input options
Search paths
Paths to the VCL\RTL
Paths to the source files
Special VCL headers
Unit scope names
Extended "System.pas"
SetString
Memory management
Inc and Dec
Definitions
Windows.pas
Processor options
Unification of CPP-sections
Stop om message directive
Substitution options
List of identifiers
Substitutions in the preprocessor
Substitutions of the translator
Refactoring
Prefixes for properties
Type options
String types
Meta capabilities
Type-map
Namespace options
Tuning options
Special treatment of some VCL functions
Use stop-variable in for-loop
Treat typed constants as non-typed constants
Initialize Variables
Try to make const correct
Apply EXTERNALSYM directive
Apply NODEFINE directive
Make classes non-abstract
Write message-map as macro
Create additional 'this' parameter for class methods
Target options
Compiler
Precompiled header
pch.inc
Target platform
Output options
Verbose
Translation
Preprocessing
Conditional compilation
Unification of notations
Scanning dependencies
Writing the C++ code
File manager
Selecting source files
Translation options
Preview of the target files
Starting the translation
Results
Management
Use in command line mode
Parameter
What is translated
Tokens
Case sensitivity
Ampersand
Simple substitutions
String constants and single characters
Simple type identifiers
File layout
System Namespace
Uses clauses
Comments
Namespaces
extern variables
Indexes
ZEROBASEDSTRINGS
Types
Records, Classes, Interfaces
Record
Variant parts in records
Class
Ancestors
Constructors
Constructor of the base class
Initialization lists
Addition of missing constructors
Virtual constructors
Problems with constructors
Destructors
class methods
non virtual class methods
virtual class methods
abstract methods
Visibility of class members
Creation of instances of classes
Interfaces
Arrays
Static arrays
Dynamic arrays
Array indices
Initializing arrays
Array parameters
Open array parameters
Static array parameter
Dynamic array parameter
array of const
array of const for C++Builder
array of const for other compilers
array of const vs. set's
Returning arrays
Enumerated types
Ranges
Sets
Order of type definitions
Order of lookup
Variables
threadvars
Resource strings
Operators
boolean vs. bitwise operators
operator precedence
is-operator
in-operator
Assignments
Explicit casts
void pointer casts
Special assignments
Routines
Procedures and functions
Parameter types
Adaption of parameters
Temporary variables
Calls of inherited procedures and functions
Nested routines
Meta information
TObject/TD2CObject
static type objects
Special RTL/VCL-functions
I/O routines
Read(Ln)/Write(Ln) routines
Formatting parameters
RegisterComponents
Properties
Field properties
Indexed properties
Default array-property
Array property
Statements
for loop's
for-in loop
finally
with-statements
Initialization/Finalization
Reading and Writing
Message handlers
Absolute address
Method pointers
Libraries
New features since Delphi 7
Unicode
Unit scope names
Operator Overloading
binary operators
unary operators
conversion operators
more operators
Class helpers
Class-like records
Nested classes
Anonymous Methods
Assignment to a method reference
Assignment to a method
Using anonymous methods
Variable binding
Use as events
Generics
Declaration
Nested types
Base types
Procedural types
Paremeterized methods
What is partially translated
class-reference type
inline assembler
const-correctness
What is not translated
Pretranslated C++ code
Delphi RTL/VCL
C++ code for C++Builder
C++ code for other compilers
Preparing Delphi code
Bugs in the Delphi RTL/VCL
Frequent re-translation
Comments (*#_ ... _#*)
Predefined identifier Cpp
Delphi directives to support C++Builder
$HPPEMIT
$EXTERNALSYM
$NODEFINE
$NOINCLUDE
Impact on notations
Delphi projects
Clang
dpr Files
dfm Files
Formatting
DelphiXE2Cpp11 versus Delphi2Cpp
TextTransformer
Service

© 2019 Dr. Detlef Meyer-Eltz