Computer Science Main Page |

Why Use the AP* Classes?
(Developed by the College Board for Advanced Placement Computer Science)

The purpose of these AP classes is to make certain aspects of the C++ programming language more understandable and more accessible to beginning programmers.

Commented header files and implementations for the Advanced Placement Computer Science classes were originally made available for use in AP C++ courses by the College Board.  Starting in May 2004, the Advanced Placement Examination language was changed to Java.

To Download the AP Classes:

In Microsoft Visual C++, these files are placed
 in the include folder.
Most likely the path on your home computer will be: 
Program Files/ Microsoft Visual Studio/ VC98/Include

While all 10 files associated with the AP classes are listed here, this course will be utilizing only: apstring.h, apstring.cpp;  apvector.h, apvector.cpp;  apmatrix.h, apmatrix.cpp.

apstring.h apstring.cpp
apvector.h apvector.cpp
apmatrix.h apmatrix.cpp
apstack.h apstack.cpp
apqueue.h apqueue.cpp

"The apstring.h, apstring.cpp, apvector.h, apvector.cpp, apmatrix.h, apmatrix.cpp, apstack.h, apstack.cpp, apqueue.h and apqueue.cpp classes are based on the AP C++ classes defined for use in the AP Computer Science courses."

Be sure that these files, when saved to your include folder,
have the correct extensions (.h or .cpp).

If you wish, you may also download the files directly from the AP Central web site under the C++ Archives.  Registration and login (which is free) are required before accessing this link:
(link current as of September 1, 2007)



A special note about the apstring class:

Note:  apstring is not a templated class and therefore is a bit different than the other apclasses (apvector, apmatrix, apstack and apqueue).  Although adding "#include apstring.cpp" at the end of apstring.h may work, the preferred method is to include it in the project rather than in the header file.  This is the preferred method because linker problems can arise when you start using programs that have multiple separately compiled classes that each use the apstring class.

"apstring.h"- library (commented) header file for new manipulation functions

"apstring.cpp"- implementation header file.  It uses #include <string.h>, #include
                             <assert.h>, and #include "apstring.h"



Permission to Post Statement:
"Inclusion of the C++ classes defined for use in the Advanced Placement Program Computer Science courses does not constitute endorsement of the other material at this website by the College Board, Educational Testing Service, or the AP Computer Science Development Committee.  The versions of the C++ classes defined for use in the AP Computer Science courses included at this website were accurate as of August 1998.  Revisions to the classes may have been made since that time."
Note:  While the above statement is a requirement for posting the AP Classes, no further revisions were made after 1998 and the AP language changed to Java.

AP* is a registered trademark of the College Entrance Examination Board,
which was not involved in the production of this web site.


 Computer Science Main Page |