Naming Files

All files provided by the Open Class Library begin with the letter "i", for IBM, and use lowercase letters.

The following table lists the file names, file extensions, and a brief description.

File Name and Extension Description
ixxxxxxx.cpp Source code
ixxxxxxx.hpp Class interface file
ixxxxxxx.h Constant definitions file
ixxxxxxx.inl Inline functions

The Open Class Library product files for this release begin with the letters "cpp." The following table lists some file names, files extensions, and a brief description.

File Name and Extension Description
cpp*i36.lib Generic import library files for each DLL.
cpp*i36.dll Generic multithreaded dynamic-link library files containing the Open Class Library classes.
cpp*S36.lib Generic static object library.
cppfgi36.dll Old graphics library. New graphics library is cppogi36.dll.
cpporr36.dll Contains the resources used with tool bars and other Open Class Library classes.
cppoai36.msg Exception messages for the User Interface Classes.
cppobi36.dll Multithreaded dynamic link library file containing the base library classes (Collection, Data Types, and Exceptions)
cppodi36.dll Multithreaded dynamic link library file containing the Dynamic Data Exchange classes.
cppofi36.dll Multithreaded dynamic link library file containing the iostream-dependent library.
cppogi36.dll Multithreaded dynamic link library file containing the Graphics classes.
cppoki36.dll Multithreaded dynamic link library file containing the Test Framework classes.
cppomi36.dll Multithreaded dynamic link library file containing the Multimedia classes
cppoqi36.dll Multithreaded dynamic link library file containing the CUA '91 controls.
cppoui36.dll Multithreaded dynamic link library file containing the User Interface Base Library classes.

Note: The first four letters of the CCL controls library (CPPOQI36.DLL) should be the same as the first four letters of the UI classes library (CPPOUI36.DLL) in dynamically linked applications. If your application statically links with the CCL controls library, you may also use the first four letters of your executables instead of those of the UI classes library.

The following table lists some other file names used by the Open Class Library for AIX, their extensions, and a brief description.

File Name and Extension Description Installed Location
libcxxfstrmns.a Static library for iostream-dependent filesystem classes /usr/ibmcxx/lib
libcxxbasens.a Static library for Base library classes /usr/ibmcxx/lib
libcxxtestfwns.a Static library for Test Framework classes /usr/ibmcxx/lib
libcxxgraph2dns.a Static library for Graphic classes /usr/ibmcxx/lib
libcxxuins.a Static library for User Interface classes /usr/ibmcxx/lib
libcxxfstrm.a Shared library for iostream-dependent filesystem classes /usr/ibmcxx/lib
libcxxbase.a Shared library for Base library classes /usr/ibmcxx/lib
libcxxtestfw.a Shared library for Test Framework classes /usr/ibmcxx/lib
libcxxgraph2d.a Shared library for Graphic classes /usr/ibmcxx/lib
libcxxui.a Shared library for User Interface classes /usr/ibmcxx/lib

 

Naming Classes and Members

The following rules were used for naming the Open Class Library classes and members:

Returning Values and Passing Function Arguments

To follow the Open Class Library conventions, pass objects by reference preferable as const references and return objects by value rather than by reference. Pass objects by pointer rather than by reference when you want a parameter to use its default.

Function return types for the various functions are as follows:

Function arguments are passed in the following ways: