1. Introduction and Teaching Suggestions
This chapter introduces the students to the history of the C++ language and begins to tell them
about what types of programs can be written in C++ as well as the basic structur
...
1. Introduction and Teaching Suggestions
This chapter introduces the students to the history of the C++ language and begins to tell them
about what types of programs can be written in C++ as well as the basic structure of a C++
program. During the discussions on compilation and running a program, care should be taken to
explain the process on the particular computer system that the students will be using, as different
computing/development environments will each have their own specific directions that will need
to be followed. In the development of this instructor’s manual, a majority of the programs have
been compiled using g++ 4.0.2 on Ubuntu Linux, g++ 3.4 on cygwin, and Visual Studio .NET
2008 using Windows Vista. There are significant differences between the development
environments and sometimes on the compilers as well. Anyone that is still using Visual Studio 6
is strongly recommended to upgrade to the latest patch level, as the original compiler contained
many errors that will prevent programs in this book from compiling.
Simple programming elements are then introduced, starting with simple variable declarations,
data types, assignment statements, and eventually evolving into arithmetic expressions. String
variables are not introduced in detail until Chapter 9, but an introduction is given and could be
elaborating upon if desired. If time allows, a discussion of how the computer stores data is
appropriate. While some of the operations on the primitives are familiar to students, operations
like modulus (%) are usually not and require additional explanation. Also, the functionality of
the increment and decrement operators requires attention. The issue of type casting is also
introduced, which syntactically as well as conceptually can be difficult for students. Some
students that have previously learned C may use the old form of type casting (e.g. (int)), but
should be encouraged to use the newer form (e.g. static_cast).
The section on programming style further introduces the ideas of conventions for naming of
programmatic entities and the use and importance of commenting source code. Commenting is a
skill that students will need to develop and they should begin commenting their code from the
first program that they complete. Indentation is also discussed. However, many development
environments actually handle this automatically.
2. Key Points
Compiler. The compiler is the program that translates source code into a language that a
computer can understand. Students should be exposed to how compiling works in their
particular development environment. If using an IDE, it is often instructive to show commandline compiling so students can a sense of a separate program being invoked to translate their code
into machine code. This process can seem “magical” when a button is simply pressed in an IDE
to compile a program.
Syntax and Semantics. When discussing any programming language, we describe both the
rules for writing the language, i.e. it
[Show More]