Compaq C++
Compaq C++
Using Compaq C++ for Tru64 UNIX and Linux Alpha
Order Number:
AA-PX2BL-TE
February 2002
This manual contains information about developing Compaq C++ programs
on Compaq Tru64 UNIX and Linux Alpha systems.
Revision/Update Information:
This is a revised manual, replacing AA-PX2BK-TE
Software Version:
Compaq C++ Version 6.5 for Tru64 UNIX
Compaq C++ Version 6.5 for Linux Alpha
Compaq Computer Corporation
Houston, Texas
First Printing, March 1993
Tenth Revision, February 2002
© 2001 Compaq Computer Corporation.
COMPAQ, the Compaq logo, and Alpha, DEC, Ladebug, OpenVMS, and VMS are
registered in the U.S. Patent and Trademark Office. Tru64 is a
trademark of Compaq Information Technologies Group, L.P. in the United
States and other countries. UNIX is a trademark of The Open Group in
the United States and other countries. All other product names
mentioned herein may be trademarks of their respective companies.
Portions of the ANSI C++ Standard Library have been implemented using
source licensed from and copyrighted by Rogue Wave Software, Inc.
Information pertaining to the C++ Standard Library has been edited and
reprinted with permission of Rogue Wave Software, Inc. All rights
reserved.
Portions copyright 1994-2001 Rogue Wave Software, Inc.
Compaq shall not be liable for technical or editorial errors or
omissions contained herein. The information in this document is
provided as is without warranty of any kind and is subject to change
without notice. The warranties for Compaq products are set forth in the
express limited warranty statements accompanying such products. Nothing
herein should be construed as constituting an additional warranty.
Confidential computer software. Valid license from Compaq required for
possession, use or copying. Consistent with FAR 12.211 and 12.212,
Commercial Computer Software, Computer Software Documentation, and
Technical Data for Commercial Items are licensed to the U.S. Government
under vendor's standard commercial license.
This document is available on CD-ROM.
This document was prepared using DECdocument, Version 3.3-1n.
Preface
This manual contains information for developing and debugging
Compaq C++ programs on Tru64 UNIX and Linux Alpha systems, and includes information
on other Tru64 UNIX and Linux Alpha features and tools that work with Compaq C++.
Note
Most information in this manual applies to both the Tru64 UNIX
and Linux Alpha platforms. The notation
[Tru64] introduces information that applies only to
Tru64 UNIX; the notation [Linux] introductes
information that applies only to Linux Alpha.
|
Intended Audience
This manual is intended for experienced programmers who need to develop
Compaq C++ programs on Tru64 UNIX and Linux Alpha systems. Users of this manual
should have a basic understanding of the C++ language and some
familiarity with the Tru64 UNIX and Linux Alpha operating systems.
Structure of this Document
This manual is organized as follows:
- Chapter 1 shows how to create, compile, link, and run
Compaq C++ programs.
- Chapter 2 describes features and characteristics that are
specific to the Compaq C++ implementation.
- Chapter 3 describes how to modify existing C header files to be
accepted by Compaq C++.
- Chapter 4 contains tips for moving applications built with other
C++ implementations to Compaq C++.
- Chapter 5 describes how to use templates with Compaq C++.
- Chapter 6 describes how to use precompiled headers with
Compaq C++.
- Chapter 7 describes the Compaq C++ implementation of the C++
Standard Library.
- Chapter 8 explains how to use C++ exception handling.
- Chapter 9 describes how to use the Ladebug debugger.
- Appendix A describes Class Library restrictions.
- Appendix B describes built-in functions.
- Appendix C describes Third Degree messages generated by the C++
Class and Standard Libraries.
- The
cxx(1)
reference page describes command line options.
Associated Documents
The following documents contain information associated with topics in
this manual:
- Stroustrup, Bjarne. The C++ Programming Language, 3rd Edition. Reading, Massachusetts:
Addison-Wesley, 1997.
Provides an exhaustive introduction to the
C++ programming language, including sophisticated language features.
This book also includes the text but not the annotations of
The Annotated C++ Reference Manual.
- C++ Class Library Reference Manual
This manual describes the class library packages
supplied with Compaq C++.
- Compaq C++ Installation Guide for Tru64 UNIX
This document supplies the information necessary
to install Compaq C++. on Tru64 UNIX systems. Instructions
for installing Compaq C++ on Linux Alpha systems are provided in a
README document supplied with the C++ for Linux Alpha kit.
- The AT&T C++ Language System, Release 2.0, Library
Manual
This document describes the AT&T class library
package.
Related Documents
The following documents are not included in the Compaq C++
documentation set. Refer to them for additional information on the C++
programming language, Compaq C, or Tru64 UNIX and Linux Alpha programming.
- Stroustrup, Bjarne and Margaret Ellis. The Annotated C++ Reference Manual. Reading,
Massachusetts: Addison-Wesley, 1990.
This text contains the current
language definition of C++.
- Carroll, Martin D. and Margaret E. Ellis. Designing and Coding
Reusable C++. Reading, Massachusetts: Addison-Wesley, 1995.
This text provides practical information for designing and
implementing C++ programs.
- Myers, Scott. Effective C++: 50 Specific Ways to Improve Your
Programs and Designs, 3rd edition. Reading, Massachusetts:
Addison-Wesley, 1997.
- Myers, Scott. More Effective C++: 35 New Ways to Improve Your
Programs and Designs. Reading, Massachusetts: Addison-Wesley,
1995.
These texts provide practical information for designing and
implementing C++ programs.
- Tru64 UNIX Programmer's Guide
This guide describes the
programming environment on the Tru64 UNIX operating system,
emphasizing the C programming language.
- Compaq C Language Reference Manual
Provides a complete
technical description of the C language as specified by the ANSI X3J11
committee. This manual also fully describes all extensions to this
standard implemented in Compaq C.
- ULTRIX to Tru64 UNIX Migration Guide
Describes how to
migrate from an ULTRIX system to a Tru64 UNIX system. This
book includes information on porting applications from ULTRIX to
Tru64 UNIX systems.
- International Standard ISO/IEC 14882
Defines the C++ International Standard. The document is available for downloading at the ANSI Electronic Store (start at
The printed version is also available for purchase from the same
web site. Choose "Catalogs/Standards Information", then
"ANSI-ISO-IEC Online Catalog", then search for
"14882".
Conventions Used in this Manual
Table 1 lists the conventions used in this manual.
Table 1 Conventions Used in this Manual
Convention |
Meaning |
%
|
A percent sign (%) is the default user prompt.
|
class complex {
.
.
.
};
|
A vertical ellipsis indicates that some intervening program code or
output is not shown. Only the more pertinent material is shown in the
example.
|
,...
|
A horizontal ellipsis in a syntax description indicates that you can
enter additional parameters, options, or values. A comma preceding the
ellipsis indicates that successive items must be separated by commas.
|
The
generic
class...
The
get()
function...
|
Monospaced type denotes the names of Compaq C++ language elements,
and also the names of classes, members, and nonmembers. Monospaced type
is also used in text to reference code elements displayed in examples
and file-name extensions.
|
italic
|
Italic type denotes the names of variables that appear as parameters or
in arguments to functions, and also denotes book titles.
|
boldface
|
Boldface type in text indicates the first instance of terms defined in
text.
|
UPPERCASE
lowercase
|
The Tru64 UNIX and Linux Alpha operating systems distinquish between uppercase and
lowercase characters. Literal strings that appear in text, examples,
syntax descriptions, and function definitions must be entered exactly
as shown.
|
cxx
(1)
|
Cross-references to reference pages include the appropriate section
number in parentheses.
|
Reader's Comments
You may send comments or suggestions regarding this manual, or any
Compaq C++ document, by electronic mail to the following Internet
address:
compaq_cxx@compaq.com
.
Include the title of the document, section and page number where the
error occurred.
Product Support
Customers with support contracts should seek support for problems
through local customer support centers.
Customers who do not have support contracts are encouraged to mail problem reports to
compaq_cxx.bugs@compaq.com
. Although these reports will certainly be used as a source of input
for fixing problems for new releases, we cannot give the reports
individual attention. We can take remedial action only on a best-effort
basis.
If you have questions, suggestions, or comments, please send mail to
compaq_cxx@compaq.com
.
When reporting problems to Compaq, please provide the following
information:
- Name and version of compiler (from a listing file or by specify the
-V
command-line option).
- Name and version of operating system
- Smallest possible complete source and commands needed to reproduce
the problem.
- An example of the incorrect results and the desired results
|