Absolute Beginners C++
Overview of Course
Learning the knowledge and skills to be a competent computer programmer
takes a lot of time and practice. Many students are put off acquiring this
valuable skill by the apparent complexity of so much 'tutorial' material.
The situation is not helped by the professional practitioners of Computer
Science who put more emphasis on systems architecture, systems design and
mathematical proof than on the 'art' of programming. However many
people who need access to computing have no interest in how computers work
or how operating systems are designed.
This course aims to take a motivated student from no knowledge of programming
to a level where he or she would be able to write simple programs and be
able to use language reference material to expand his or her knowledge.
Although the course only introduces the rudiments of programming it aims
to remove some of its 'mystique'. The course is designed to be very practical
and students are expected to write complete programs to specification from
the first day. Working in this way, students learn very quickly how to
operate the computer tools such as editors and compilers needed for writing
The course is organised around 'lessons' which each introduce one small
element of the C++ language. Each lesson has a set of example programs
- each complete in themselves - which demonstrate the topic. The structure
of these example programs is explained in class. Each lesson also has a
small number of exercises that the student is expected to complete. Students
should have their solutions to these exercises checked by the tutor. Learning
comes from studying the examples and trying to generalise to the exercises;
consolidation comes from seeing those generalisations actually work, confidence
comes from knowing your solutions are acceptable to an expert.
3. Programming Environment
The course can be pursued with any recent C++ compiler and a programmer's
editor. In the speech science laboratory we will be using a freely available
set of tools: the GNU project port of the gcc C++ compiler to WIN32 (known
as x86-win32-gcc) and the text editor SCITE (Scintilla Text Editor). Anyone
can download these tools from the Internet and run them on a Windows-95,
Windows-98, or Windows-NT system.
For the C++ compiler, you need to download these files:
Unpack both of these files to c:\gcc-2.95.2\ then add this line to the end of
your autoexec.bat file:
For the editor you just need these three small files (save them in c:\gcc-2.95.2\bin):
Finally, add a shortuct to scite.exe on your desktop.
In the Department of Phonetics and Linguistics, one of the technicians
can install these on your computer for you.
A separate sheet gives you the basic commands
for editing and compiling programs with these tools.
4. Reference Material
There is very little available material which is truly tutorial and suited
to beginners. The best selling text on C++, called the 'C++ Primer' by
Lippman is actually written for 'C' language programmers wanting to convert
to C++. Perhaps the best way to proceed is to work through this course
without a reference text, then attempt to study further with the C++ Primer.
If you would like to buy a C++ book, you should try and get a recent
one published in 1999 which uses the lastest ANSI standard for C++. The
book should say that it covers 'Standard C++' or the 'Standard Template Library'.
There are a number of places on the web where you can download information
and tutorials about programming in C++ free of charge. These are some that
Thinking in C++. Complete book available on the Web.
"Teach yourself C++" from Amazon bookstore.
C++ Virtual Library. Index to C++ resources in the web.
Introduction to Object Oriented Programming with C++. A Web tutorial.
Standard Template Library Documentation. Not introductory.
(c) 1999 Mark Huckvale University College London