Lecture 2 - Page 32 : 42
Notes about C++
Basic facilities
Basic facilities
Fundamental types i C++
Booleans
Structs in C++
Declarations and definitions
The structure of a declaration
Declaring several names together
Declarations as statements - declarations in conditions
Constants
The general notation of objects in C++
Lvalues
C-style strings
C++ style strings
Strings - examples
References
Rules for references
References - Examples
Constant References
References versus Pointers
Parameter passing in C++
Value return
Type conversion - Grand Overview
Implicit type conversions
Explicit type conversion
Function Overloading
Function Overloading - more detailed rules
Function Overloading - Examples
Vectors in C++
Vectors - examples
The free store
Input and output in C++
Overloaded operators and IO
Standard streams
Stream State
Manipulators
More manipulators
Logical program organization
More namespaces
Physical program organization
Example of program organization
The standard library namespace
Point Exercise - C++ versus C#
Overloaded operators and IO
Existing operators must be choosen for IO purposes
The
assignment
operator was considered
cin = x
and
cout = y
Its association to the right is inappropriate
The
less than
and
greater than
operators were considered
cin > x
and
cout < y
Unreadable, and confusing
The
left shift
and
right shift
operators were choosen
cin >> x
and
cout << y
The relative low priority of
<<
is practical when values of expressions must be printed.
cout << x + y * z
and not
cout << (x + y * z)
The C++ Programming Language
: Page 121-122: operator priorities