Exercises, examples and other material relating to training module C231. This topic is presented on public courses Learning to program in C and C++
, C++ for C Programmers
, C and C++ Programming
, Learning to program in C and C++
, C and C++ Programming
Why do we need to go beyond C? The principles
of writing a larger application or suite of programs
based on your own data types, with code that can be
maintained in a modular manner.
Related technical and longer articlesSolution Centre - all article listingSolution Centre - all article listingIntroduction to the C plus plus Programming Language
|Articles and tips on this subject||updated|
|4562||Left shift operator on an output stream object - C++|
When explaining "Hello World" in C++ (see here), delegates who are already familiar with programming in other languages pick up on the line
cout << "Welcome - and enjoy your C++ course" << endl;
and ask for an explanation.
Yes - it is a bit different, isn't it?
The explanation ...
|4561||Hello World in C++ - a first program, with the process explained|
"Hello World" programs - traditionally (a good tradition) te first example on a proogramming course in any language - just output the words "Hello World" or similar text and do little else. They show learners / students / delegates the mechanism of working with a language in te simplest possible example ...
|4466||Moving from C to C++ - Structured to Object Oriented - a lesson for engineers|
The C language formed a a logical base from which C++ - an object oriented language developed. One of the major reasons that it is indeed a logical base is that C and its libraries include a number of elements though which you can write code which is essentially object oriented if you write with the ...
|2169||When should I use OO techniques?|
We have two friends. They're married. She's a keen advocate of Object Oriented Programming and he can't stand the approach. So take them to the pub, buy them a couple of drinks each, mention OO programming and watch the feathers fly ;-)
Seriously, Object Oriented Programming has its place - and there ...
|3250||C++ - how we teach the language and the concepts behind the language|
When I'm teaching an object oriented language such as C++, I like to write code and demonstrate from scratch to my class, getting them to 'feed' me with application data and information so that I can show them how programs are really developed using the OO approach - both in general, and in the specific ...
|3053||Make - automating the commands for building and installing|
Coding projects (and their open source distributions) require build scripts - files of commands that convert the source code into executable programs, that install the various resultant files into place, and that can clean up the build area for a fresh build or for redistribution. The make system - ...
|3069||Strings, Garbage Collection and Variable Scope in C++|
In C, you'll handle strings as arrays of chars (type char *) and that does work - but with grumbles from the compiler about deprecation - in C++. The more modern (or shall we say "more OO") approach is to handle strings as objects - and those will be objects of type string, with headers loaded via
|3052||Getting your C++ program to run|
Here are some problems with compiling and running a quite straightforward C plus plus program (Gnu C++ compile gcc)
wizard:cpp graham$ g++ morethan.cpp
morethan.cpp:9:18: error: ir.inc: No such file or directory
morethan.cpp: In function â€˜int main()â€™:
morethan.cpp:27: error: â€˜intreadâ€™ ...
|2845||Objects and Inheritance in C++ - an easy start|
We can end up with a lot of files when we do even a simple C++ example to show inheritance - a file for the main program, a file each for the base class and subclass, and a header file for the prototypes for each of the base class and subclass too.
So it's much easier to do it all as one file - but ...
|317||Programming languages - a comparison|
"It would take me a week to develop application XXX in C, 2 or 3 days in Java, and a day in Perl, PHP, or Python."
So I say when I'm teaching Perl, PHP or Python.
What do I say when I'm teaching C, C++ or Java? The same thing! But there are qualifications / differences / reasons and just because it ...
|2004||Variable Scope in C++|
In C++, a variable is 'scoped' to the block in which it is declared. In other words, it exists from the point at which you tell the compiler what type of value it contains through to the close brace at that matches the open brace preceeding that declaration.
In the most frequent use, this means that ...
|928||C++ and Perl - why did they do it THAT way?|
"Why did [they] do it THAT way?". It's a question often asked by the brighter and more perspective delegates on courses concerning some features of a language that I'm teaching them. And the answer "because they did" is a poor one. It's like saying to a child "because I said so" rather than looking ...
|318||Choosing a theme|
Graham puts his marketing hat on.
We're going great guns with the new C and C++ courses (Announcement) - a very logical extension as I probably know C even better than Perl or PHP - but we needed a theme.
What are C and C++? They're languages that form the bedrock on which other modern languages ...
Examples from our training material
Some modules are available for download
as a sample of our material or under an Open Training Notes License
for free download from [here]
Topics covered in this module
C plus Object Orientation.
Overview of the principles of Object Orientation
Uses of C++
If you are looking for a complete course and not just a information on a single subject, visit our Listing and schedule
Well House Consultants specialise in training courses in
. We run
throughout the UK (and beyond for longer courses), and
at our training centre in Melksham, Wiltshire, England.
It's surprisingly cost effective to come on our public courses -
even if you live in a different
country or continent to us
We have a technical library of over 700 books on the subjects on which we teach.
These books are available for reference at our training centre.