Course Details
| Title | C++ for Engineers |
| Presenters | Dr Jian Yu and Mr Yanbo Wu, The University of Adelaide |
| Dates | 15-17 July 2010
|
| Location | Adelaide |
| Venue | Technology Park Conference Centre, Mawson Lakes SA 5095 |
| Reference Number | 071209 |
| Fees | AU$ 1980 (includes GST) |
| How to register | To register for this course either: - fill out this registration form and scan and email it to industryeducation@nicta.com.au or fax it to +61-8-8343-8711;
- or click on the "Register Online" button next to the course name on the Upcoming courses page.
|
Course Description
The aim of this 3-day course is to expose existing programmers to a wide set of facilities available in the C++ language. Emphasis is placed on using C++ in scientific and engineering applications. Many of the more advanced features of the language will be explored with the aim of showing how they may be incorporated into well designed programs. Throughout this process, many common mistakes will be highlighted, and various remedies given.
The language features covered include the use of the C++ object model and inheritance, templates, operator overloading and custom memory management. These features will be presented in the context of implementing basic linear algebra operations.
Bring your own laptop computer.
Target Audience
The course is aimed at programmers who want to extend their experience in the C++ programming language. At least a basic familiarity with C++ (or C, or Java) syntax is assumed, although no significant experience is required. The emphasis of examples will be biased toward engineering-type applications, although anyone looking to further their C++ knowledge will benefit.
Brief Course Outline
Comparison of C with C++: C++ object model, and class syntax; C vs C++ compatibility; C++ replacements for pre-processor features; const members; this pointer; in-line functions; compilation and linking process.
Class manipulation: dynamic memory allocation within classes; automatically generated members, and when not to use them; friends; mutable members; explicit and automatic class conversion; conversion operators; operator overloading; overloading I/O operators.
Inheritance: when to use inheritance/subtypes; automatic class conversion; polymorphism and virtual function syntax; pure virtual functions; RTTI: dynamic_cast vs static_cast; multiple inheritance.
Templates: template functions vs template classes; compilation issues; templates vs inheritance; default template parameters & nested templates.
Advanced memory management: the new and delete operators: global & member functions; reference counting: handle classes; smart pointers, templates/inheritance.
Exceptions: motivation and syntax; incorporation to function prototypes.
How to Register
To register for this course fill out this registration form and scan and email it to industryeducation@nicta.com.au or fax it to +61-8-8343-8711 or click on the "Register Online" button next to the course name on the Upcoming courses page.
Cancellation policy
At least four weeks notice is required for cancellation of a place in a short course for full reimbursement. If cancellation is later than 4 weeks then the place can either be given to another person or the registrant can be provided with a credit towards other NICTA training.
For further information please contact:
Anne-Marie Eliseo
Industry Education Manager
phone: +61-8-8343-8710
email: industryeducation@nicta.com.au
