In a few weeks, we'll be teaching a crash course on C++ for Java programmers straight out of college. They have little or no experience yet with C or C++.
Previous editions of this course were just 1 or 2 half-day sessions and covered topics including:
- new language features, e.g.
- header vs. implementation
- pointers and references
- memory management
- operator overloading
- templates
- the standard libraries, e.g.
- the C library headers
- basic iostreams
- basic STL
- using libraries (headers, linking)
- they'll be using Linux, so
- Basic Linux console commands
- GCC and how to interpret its error messages
- Makefiles and Autotools
- basic debugger commands
- any topic they ask about
During the course, each person individually writes, compiles, runs, and debugs simple programs using the newly introduced features. Is this the best way to learn?
- Which topics do you consider most crucial?
- Which topics should be added or removed?
- Which topics just can't be covered adequately in a short time?