Category : C Source Code
Archive   : CPTUTOR1.ZIP
Filename : TABCONT.TXT

Output of file : TABCONT.TXT contained in archive : CPTUTOR1.ZIP


C++ TUTORIAL - Version 2.0

This documentation and the accompanying software, including all of
the example C++ programs and text files, are protected under United
States copyright law to protect them from unauthorized commercial-
ization. This version of the tutorial is distributed under the
shareware concept, which means you are not required to pay for it.
You are permitted to copy the disks, and pass the copies on to a
friend, provided that you do not modify any files or omit any files
from the complete package, and you are in fact encouraged to pass
on complete copies to friends. You are permitted to charge a small
fee to cover the costs of duplication, but you are not permitted to
charge anything for the software itself.

If you find the tutorial helpful, you are encouraged to register
with the author and to submit a small fee to help compensate him
for his time and expense in writing it. We will provide you with
a beautifully printed copy of this tutorial if you submit a full
registration. See the READ.ME file on either diskette for addi-
tional details.

Whether or not you send a registration fee, feel free to request
a copy of the latest list of available tutorials and a list of the
authorized Public Domain libraries that distribute our full line of
programming language tutorials.

Gordon Dodrill - July 20, 1990

Copyright (c) 1989, 1990, Coronado Enterprises

Coronado Enterprises
12501 Coronado Ave NE
Albuquerque, New Mexico 87122


Introduction Page I-1

Chapter 1 - Simple Things Page 1-1
CONCOM.CPP Constants and comments 1-1
SCOPEOP.CPP Scope operator 1-3
MESSAGE.CPP The stream library 1-3
FSTREAM.CPP File streams 1-6
VARDEF.CPP Variable definitions 1-7

Chapter 2 - Compound Types Page 2-1
ENUM.CPP The enumerated type 2-1
STRUCTUR.CPP The structure 2-1
CLASS1.CPP The class 2-2
UNIONEX.CPP The union 2-3
TYPECONV.CPP Type conversions 2-4

Chapter 3 - Pointers Page 3-1
POINTERS.CPP Using Pointers 3-1
NEWDEL.CPP New and delete operators 3-3
FUNCPNT.CPP Function pointers 3-5

Chapter 4 - Functions Page 4-1
PROTYPE1.CPP Using prototypes 4-1
PROTYPE2.CPP Using prototypes 4-3
PASSREF.CPP Pass by reference 4-5
DEFAULT.CPP Parameter defaults 4-6
VARARGS.CPP Variable number of arguments 4-7
OVERLOAD.CPP Overloading function names 4-8

Chapter 5 - Encapsulation Page 5-1
OPEN.CPP No information hiding 5-1
CLAS.CPP Information hiding 5-2
OPENPOLE.CPP Corruptible data 5-6
CLASPOLE.CPP Protected data 5-7
CONSPOLE.CPP Constructors and destructors 5-10
BOXES1.CPP All in one file 5-11
BOX.HPP Box interface 5-12
BOX.CPP Box implementation 5-12
BOXES2.CPP Using the box class 5-13

Chapter 6 - More encapsulation Page 6-1
OBJARRAY.CPP An Array of objects 6-1
OBJSTRNG.CPP An object with a string 6-3
OBJINTPT.CPP An object with a pointer 6-3
OBJDYNAM.CPP Dynamic allocation of objects 6-5
OBJLIST.CPP Embedded pointers 6-6
OBJLINK.CPP Linked list of objects 6-7
NESTING.CPP Nested classes 6-9
OPOVERLD.CPP Operator overloading 6-10
FUNCOVER.CPP Function name overloading 6-12

Chapter 7 - Inheritance Page 7-1
VEHICLE.HPP Vehicle interface 7-1
VEHICLE.CPP Vehicle implementation 7-2
TRANSPRT.CPP Using the vehicle class 7-2
CAR.HPP Car interface 7-3
CAR.CPP Car implementation 7-4
TRUCK.HPP Truck interface 7-5
TRUCK.CPP Truck implementation 7-6
ALLVEHIC.CPP Use of car, truck, & vehicle 7-6

Chapter 8 - More inheritance Page 8-1
INHERIT1.CPP Using public 8-1
INHERIT2.CPP Omitting public 8-2
INHERIT3.CPP Intra class messages 8-4
INHERIT4.CPP Using protected 8-4
INHERIT5.CPP Using constructors 8-6
INHERIT6.CPP Arrays and pointers 8-6

Chapter 9 - Multiple Inheritance Page 9-1
MULTINH1.CPP Multiple inheritance 9-2
MULTINH2.CPP Duplicate method names 9-3
MULTINH3.CPP Duplicate variable names 9-4

Chapter 10 - Virtual functions Page 10-1
VIRTUAL1.CPP The starting point 10-1
VIRTUAL2.CPP Adding virtual 10-3
VIRTUAL3.CPP Using pointers to subclasses 10-3
VIRTUAL4.CPP Using virtual 10-4
VIRTUAL5.CPP Using pointers to parent class 10-4
VIRTUAL6.CPP True virtual functions 10-6

Chapter 11 - More Virtual Functions Page 11-1
PERSON.HPP Person header 11-1
PERSON.CPP Person implementation 11-2
SUPERVSR.HPP Personnel header 11-2
SUPERVSR.CPP Personnel implementation 11-3
EMPLOYEE.CPP A simple user program 11-3
ELEMLIST.HPP Linked list header 11-4
ELEMLIST.CPP Linked list implementation 11-5
EMPLOYE2.CPP A better user program 11-5

Chapter 12 - Flyaway adventure game Page 12-1
FLYAWAY.EXE Flyaway executable 12-1
CLOCK.HPP Clock header 12-2
CLOCK.CPP Clock implementation 12-2
ITEMS.HPP Moveable items header 12-3
ITEMS.CPP Items implementation 12-3
SCHEDULE.HPP Scheduler header 12-4
SCHEDULE.CPP Scheduler implementation 12-4
LOCATION.HPP Locations header 12-5
LOCATION.CPP Locations implementation 12-5
MESSAGE.H Hint messages 12-6
FLYAWAY.H Nouns and verbs 12-7
COMMAND.CPP Command parser 12-7
FLYAWAY.CPP Main program 12-8


The author of this tutorial began programming in 1961 using FORTRAN
on an IBM 1620. Since then, most of his career has been involved
with designing digital logic for satellite application. In 1983,
being somewhat burned out with logic design, he began a study of
some of the more modern programming languages and has since made
a complete career shift to software development. After learning
Pascal, C was studied, followed by Modula-2 and Ada, and more
recently C++. Rather than simply learning the syntax of each new
language, modern methods of software engineering were studied and
applied to effectively utilize the languages. He is currently
employed by a large research and development laboratory where he
continues to study, teach, and apply the newer programming

  3 Responses to “Category : C Source Code
Archive   : CPTUTOR1.ZIP
Filename : TABCONT.TXT

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: