Gillius's Programming

Tutorials Section Contents

This area will contain various learning infos on C++ and game programming. If you have any questions about programming in Pascal(DOS) or C++(DOS or Windows), feel free to contact me. The information in these tutorials is not a replacement for a good book and/or teacher since I can only put as much information my spare time and experience allows me, but it will be a good start.

Learning C/C++ without classes

This tutorial requires some programming skills from any other language, espically BASIC or Pascal, since this will only explain working with the language C/C++, not programming in general.

Updated: I went through and fixed up a lot of minor errors and formatting in the document and updated it for the new C++ standards to make the code modern and correct.

Tutorial here, last updated December 2004
This tutorial is "finished"

Learning Allegro

This tutorial requires C programming skills (as provided above). It also has a tutorial for using MSVC with Allegro step-by-step that assumes no previous MSVC knowledge.

Tutorial here, last updated 1/24/02
This tutorial is "finished"

Learning Object Oriented Programming in C++

This tutorial requires good C++ skills (as provided above).

Tutorial here, last updated 1/24/00 + fix example in chapter 4 on 1/22/2009 and example in chapter 3 on 3/2/2012.
The first five chapters are done, the sixth is unfinished.

Addendum to Learning OOP in C++

Some important things to realize about the previous tutorial, and explains the changes that have occurred due to the new ISO C++ 98 standard, which is very standard now but was very new and not supported when I wrote most of the tutorial in 99.

Discusses namespaces and the new include files, iostreams, and the STL.

Tutorial here, last updated 11/29/01


Appendix A -- Escape Characters
Appendix B -- ios manipulators used with the << operator
Appendix C -- ios flags
Appendix D -- Variable Capacities (Chart in C/C++ Tutorial)
Appendix E -- Debugging Pointers (Chart in C/C++ Tutorial)
Appendix F -- Linklists vs Arrays
Appendix G -- Data Hiding in Inheritance

The Mini-Dictionary

A small dictionary regarding some common and hard to understand terms on the site, found here.

Extra Learning and Files has a good listing of C++ related books that are freely available online. At the time I made this link, the books listed there were very good quality (Eckel and Stroustrup and others). They will go much more in depth than any of the tutorials that I've written.

Suggested Reading: The book C++, How To Program by Deitel is the best C++ book I've seen and will teach you to code correctly, and addresses virtually all of the C++ basics, including the iostreams and the Standard C++ library. Deitel also writes good books for Java and C, similarly titled. I still use these books as reference.

* means the file is fully commented (sometimes line-by-line) and explained. -- Demonstrates file I/O with fstreams. Acts like DOS's copy command. Size: 76k Last updated: 3/30/99

Copies 2 files like DOS copy command, but unfortunately, it doesn't accept wildcards. It's just a basic program demonstrating how to read and write using fstreams. Note that this program will only work in DJGPP and not Borland C++ because the ANSI C++ doesn't have a standard for file I/O. I found that out the hard way!

Changes since 10/98:
Bugs of "overcopying" now fixed, uses new operator now.
Fully commented line by line and explained. -- constructors, = operators, when data is copied. v1. 12/9/98.

This example program shows how to define constructors for copying, and how to define overloaded = operators, and when each is used. Also shows how many copies are made. (More made than one normally sees)