search    
HP aC++ Online Programmer's Guide
Hewlett-Packard
HP aC++/HP C Product Documentation
Choose from the following categories for information about C++ and related topics:
Other Resources
» C++ Syntax and Basics
» C++ Concepts
» C++ Examples
» C++ Standards
» Object Oriented Programming
» C++ Courses
 

Release Notes

HP aC++/HP ANSI C Release Notes provide information about new features in this version. Release notes are provided as follows:

  • An ASCII file which is part of the HP aC++ product. This is available at this location:
    file:/opt/aCC/newconfig/RelNotes/ACXX.release.notes
  • An ASCII file which is part of the HP C product. This is available at this location:
    file:/opt/ansic/newconfig/RelNotes/releasenotes
  • A printed copy which is part of the HP aC++ product.

  • On the World Wide Web at the following location:

    http://docs.hp.com/en/dev.html

  • On the HP-UX CD-ROM

  • A link from the Online Help (Release Notes).
Online HTML Files
  • The Rogue Wave Software library manuals are provided as HTML formatted files. Refer to HP aC++ Libraries for details.
  • A technical paper summarizing template features defined in the proposed C++ standard and describing template instantiation as implemented in HP aC++ is provided. Refer to HP aC++ Templates for details.
  • HP aC++/HP ANSI C Online Programmer's Guide - The guide you are currently viewing focuses primarily on HP aC++ and HP C specific information. Refer to Technical Books and Courses for information related to the C++ language and object oriented programming.
    • Navigating Online - Use the Table of Contents on the left side of each page to navigate to a particular page.
    • Search - Use the Search field at the top of each page to search for information using keywords.
    • On HP-UX, a method of searching the entire set of files comprising the guide is to use the grep command. For example, to display all lines containing the exact string, performance, enter the following command at the command prompt:
      grep 'performance ' ../../libstd
    • If you want the search to be case insensitive and the results directed to a file named perf, enter the following command:
      grep -i 'performance ' ../../libstd > perf
    • Printing - From your HTML viewer menu bar, select File and Print to print a page.
    • Invoking the Online Programmers' Guide - The guide is provided as HTML formatted files, viewable by means of your web browser. Invoke the guide in either of the following ways:
      • Specify the +help option on the aCC command line.
      • From your web browser, enter the appropriate URL:
        file:/opt/aCC/html/C/guide/index.htm (English)
        
        file:/opt/aCC/html/ja_JP.SJIS/guide/index.htm (Japanese)
  • The English version of the guide is installed in the /opt/aCC/html/C/ directory. If you choose to move this guide to a different location without having to edit any links, you will need to move all of the subdirectories in /opt/aCC/html/C/.
  • The Japanese version of the guide is installed in /opt/aCC/html/ja_JP.SJIS/.
Manpages
The following manpages are provided:
  • aCC(1) - The online manpage for the HP aC++/HP ANSI C compiler command, aCC(1) is located in the directory /opt/aCC/share/man/man1.Z. If you see the message, Man page could not be formatted, ensure the manpage is installed.
  • Manpages for the Rogue Wave Standard C++ Library 2.2.1 and the Rogue Wave Standard C++ Library 1.2.1 are located in the directory /opt/aCC/share/man/man3.Z. To insure that you invoke a man page for a library, specify the appropriate section 3 subsection.

    For example, to find the man page for the copy command:

    
    man 3n copy     # finds the new Standard C++ Library (libstd_v2) version
    
    man 3f copy     # finds the old Standard C++ Library (libstd) version
    
    man 3s copy     # finds the old Standard Components version
    
    
  • Japanese manpages for the Rogue Wave Standard C++ Library 1.2.1 are located at:
    • /opt/aCC/share/man/ja_JP.eucJP/man1.z and /opt/aCC/share/man/ja_JP.eucJP/man3.z for the euc character set
    • /opt/aCC/share/man/ja_JP.SJIS/man1.z and /opt/aCC/share/man/ja_JP.SJIS/man3.z for the SJIS character set
  • The online manual page for c++filt is at /opt/aCC/share/man/man1.Z.
  • Online manual pages for the cfront compatibility libraries are at /opt/aCC/share/man/man3.Z. For listings of these manpages with brief descriptions, refer to Standard Components Library and IOStreams Library.
Example Source Files

Online C++ example source files are located in the directory, /opt/aCC/contrib/Examples/RogueWave. These include examples for the Standard C++ Library and for the Tools.h++ Library.

Linker and Libraries

HP-UX Online Linker and Libraries User's Guide - This online guide is provided with HP aC++, HP C, COBOL, and Fortran compiler products. It replaces the Programming on HP-UX manual.

The guide describes fundamentals of software development on HP-UX, including how the basic pieces of the development environment fit together - compilers, assemblers, linker, libraries, and object files. It also covers using the ld linker to create executable programs, creating and linking archive and shared libraries, writing position-independent code (used to build shared libraries), managing shared libraries from within a program, porting applications to HP-UX, 64-bit data model considerations, and advanced system programming techniques.

The guide is provided online in HP VUE or CDE format. To access, click the question mark icon (?) or enter the command ld +help.

Migration from HP C++ (cfront) to HP aC++

Refer to the migration section for information about differences between the two compilers. Also refer to the HP aC++ Transition Guide.

HP aC++ Transition Guide has information to help you make the transition from HP C++ 10.x (cfront) to HP aC++. A transition is necessary because the addition of ANSI-compliant features in the compiler may require changes to source code and binary files.

This document is available on the at the following location:

http://h21007.www2.hp.com/dspp/tech/tech_TechDocumentDetailPage_IDX/1,1701,1744,00.html

cxx-dev Mailing List

For general background information and experience, subscribe to the cxx-dev mailing list. To subscribe, send a message to:

majordomo@cxx.cup.hp.com
with the command subscribe list-name in the body of the message.

Available list names are as follows:

cxx-dev HP C++ Development Discussion List
cxx-dev-announce HP C++ Development Announcements
cxx-dev-digest HP C++ Development Discussion List Digest

cxx-dev-announce is also broadcast to cxx-dev, so there is only a need to subscribe to one of the lists. The digest also includes both cxx-dev and cxx-dev-announce.

For additional help or information about the list server, send a message to majordomo@cxx.cup.hp.com with the command help in the body of the message.

Parallel Processing

Parallel Programming Guide for HP-UX Systems (MPN : B6056-90006) - This document describes efficient parallel programming techniques available for the HP Fortran 90, HP C, and HP aC++ compilers on HP-UX.

This document is available on the HP-UX 11.0 CD-ROM and at the following location:

http://docs.hp.com/en/dev.html/

To order a paper copy, contact Hewlett-Packard's Support Materials Organization (SMO) at 1-800-227-8164 and provide the above part number (MPN).

Threads
  • For information specific to HP aC++ see Using Threads in this programming guide.
  • Programming with Threads on HP-UX (B2355-90060) - To order a paper copy contact Hewlett-Packard's Support Materials Organization (SMO) at 1-800-227-8164 and provide the above part number.
  • Thread Time: The Multithreaded Programming Guide, by Scott J. Norton and Mark D. DiPasquale (ISBN 0-13-190067-6) - Hewlett-Packard Professional Books, published by Prentice Hall.
HP aC++ World Wide Web Homepage

Refer to the HP aC++/HP ANSI C page for the latest information regarding:

  • Frequently Asked Questions
  • Release Version and Patch Table
  • Purchase and Support Information
  • Documentation Links

Access the HP aC++ World Wide Web Homepage at the following location:

http://www.hp.com/go/cpp

HP aC++ 64-bit Transition

HP-UX 64-bit Porting and Transition Guide - This guide helps developers transition applications from an HP-UX 32-bit platform to the HP-UX 64-bit platform.

This document is available on the HP-UX 11.0 CD-ROM and at the following location:

http://docs.hp.com/hpux/onlinedocs/5966-9887/5966-9887.html

HP aC++ Libraries

The following libraries are available with

For additional information regarding Rogue Wave Software, Inc. products, visit their home page available at the following location:

http://www.roguewave.com/


Rogue Wave Standard C++ Library 2.2.1
  • Rogue Wave Software Standard C++ Library 2.2.1 Class Reference -- This reference contains an alphabetical listing of all of the classes, algorithms, and function objects in the library. The library includes the standard iostream library and has namespace std enabled.
  • The reference is provided as HTML formatted files which you can view with a browser. The files are located at /opt/aCC/html/libstd_v2/stdref/index.htm.

  • Rogue Wave Software Standard C++ Library 2.2.1 User's Guide -- This guide gives information about library usage and includes an extensive discussion of locales and iostreams.

    The reference is provided as HTML formatted files which you can view with a browser. The files are located at /opt/aCC/html/libstd_v2/stdug/index.htm.

  • Man Pages -- Online man pages for this Rogue Wave Standard C++ Library 2.2.1 are located in the directory /opt/aCC/share/man/man3.Z. To ensure that you invoke a man page for the library in which you are interested, specify the appropriate section 3 sub-section. For example, to find the man page for the copy command:
    
    man 3n copy     # finds the new Standard C++ Library (libstd_v2) version
    
    man 3f copy     # finds the old Standard C++ Library (libstd) version
    
    man 3s copy     # finds the Standard Components version
    
                             


Rogue Wave Standard C++ Library 1.2.1
  • Rogue Wave Software Standard C++ Library 1.2.1 Class Reference -- This reference provides an alphabetical listing of all of the classes, algorithms, and function objects in this implementation of the Rogue Wave Standard C++ Library 1.2.1. It is provided as HTML formatted files which you can view with a browser. The files are located at /opt/aCC/html/libstd/ref.htm.

    This compatibility library does not include the standard iostream library and does not have namespace std enabled. It is not compatible with the more standard Rogue Wave Standard C++ Library 2.2.1.

    Note that the Standard C++ Library Class Reference can be ordered in paper copy from Rogue Wave Software Inc.

  • Man Pages -- Online man pages for this Rogue Wave Standard C++ Library 1.2.1 are located in the directory /opt/aCC/share/man/man3.Z. To ensure that you invoke a man page for the library in which you are interested, specify the appropriate section 3 sub-section. For example, to find the man page for the copy command:
    
    man 3n copy     # finds the new Standard C++ Library (libstd_v2) version
    
    man 3f copy     # finds the old Standard C++ Library (libstd) version
    
    man 3s copy     # finds the Standard Components version
    
    

    Japanese man pages are located at:

    • /opt/aCC/share/man/ja_JP.eucJP/man1.z and /opt/aCC/share/man/ja_JP.eucJP/man3.z for the euc codeset
    • /opt/aCC/share/man/ja_JP.SJIS/man1.z and /opt/aCC/share/man/ja_JP.SJIS/man3.z for the SJIS codeset
  • Example Source Files -- Online example source files for this Rogue Wave Standard C++ Library 1.2.1 are located in the directory, /opt/aCC/contrib/Examples/RogueWave.


    Tools.h++ Library
    • Rogue Wave Software Tools.h++ 7.0 Class Reference -- This reference describes all of the classes and functions in the Tools.h++ Library. It is provided as HTML formatted files which you can view with an HTML browser.

      The files are located at /opt/aCC/html/librwtool/ref.htm.

      This compatibility library is intended for use with Rogue Wave Standard C++ Library 1.2.1. It is not compatible with the more standard Rogue Wave Standard C++ Library 2.2.1.

      Note that the Tools.h++ Class Reference can be ordered in paper copy from Rogue Wave Software Inc. Also available in paper are:

      • Tools.h++ User's Guide -- How to write programs using Tools.h++.
      • Tools.h++ Getting Started Guide -- Installing and using Tools.h++.
    • Example Source Files -- Online example source files for the Tools.h++ Library are located under the directory, /opt/aCC/contrib/Examples/RogueWave.
    • Rogue Wave Software Tools.h++ 7.1.1 Class Reference -- This reference describes all of the classes and functions in the Tools.h++ Library version 7.1.1. It is provided as HTML formatted files which you can view with an HTML browser. The files are located at /opt/aCC/html/librwtool_v2/.

      Note that this library is compatible with the more standard Rogue Wave Standard C++ Library 2.2.1.


    HP C++ (cfront) Compatibility Libraries
    • Standard Components and IOStream Man Pages -- HP C++ (cfront), compatible versions of the standard components class library and the iostream library are provided with HP aC++.
    • Online man pages are located in the directory /opt/aCC/share/man/man3.Z. For listings of these man pages with brief descriptions, refer to:
HP aC++ Linking

HP-UX Online Linker and Libraries User's Guide : This online help guide is provided with HP aC++, C, COBOL, and Fortran compiler products. It replaces the Programming on HP-UX manual. The guide describes fundamentals of software development on HP-UX, including how the basic pieces of the development environment fit together - compilers, assemblers, linker, libraries, and object files. Also covers using the ld linker to create executable programs, creating and linking archive and shared libraries, writing position-independent code (used to build shared libraries), managing shared libraries from within a program, porting applications to HP-UX, 64-bit data model considerations, and advanced system programming techniques.

The guide is provided online in HP VUE or CDE format. To access, click the question mark icon (?) or enter the command ld +help.

For More Information:

HP aC++ Templates

Using HP aC++ Templates describes the instantiation coding methods and options available to you and provides an overview of HP aC++ template processing.

HP WDB Debugger

Download the HP WDB product and documentation from the following location:

http://www.hp.com/go/wdb

C++ Syntax and Basics

C++ Primer, second edition, by Stanley Lippman (ISBN 0-201-54848-8): A complete tutorial introduction to C++, for those with little or no C or C++ experience.

C++ Concepts

The following books are available at leading technology bookstores:

  • Effective C++ Plus: 50 Specific Ways to Improve Your Programs and Designs, by Scott Meyers (ISBN 0-201-563-649) - 50 concise rules based on what experienced C++ developers almost always do (or almost always avoid) to create efficient, portable, and maintainable software. Each rule is accompanied by examples that illustrate the rule at work.
  • More Effective C++ Plus: 35 New Ways to Improve Your Programs and Designs, by Scott Meyers (ISBN 0-201-633-71X) - Drawing on years of experience, Meyers explains how to write software that is more effective: more efficient, more robust, more consistent, more portable, and more reusable.
  • Advanced C++ Programming Styles and Idioms, by James Coplien (ISBN 0-201-54855-0) - For programmer's having knowledge of C++ basics, this book imparts information gained from a broad range of C++ programming experience.
  • The Design and Evolution of C++, by Bjarne Stroustrup (ISBN 0-201-54330-3) - A history of the C++ language by its creator.
C++ Examples

C/C++ Annotated Archives, by Art Friedman, Lars Klander, Mark Michaelis, and Herb Schidlt (ISBN 0-07-882504-0) - A collection of carefully documented C/C++ components and programs covering a wide range of computing applications.

C++ Standards
The following is a list of resources for C++ Standards:
  • The ISO/IEC 14882 Standard for the C++ Programming Language (the international standard for C++) was ratified by the C++ standardization committees in July, 1998. It is available for purchase from the ANSI eStandards Store at the following location:

    http://www.ansi.org

The following books are available at leading technology bookstores:
  • The C++ Programming Language, Third Edition, by Bjarne Stroustrup (ISBN 0-201-88954-4) - Based on the C++ Final Draft International Standard, this book is a complete rewrite of the second edition. It covers the language, its standard library, and key design techniques as an integrated whole.
  • C++ Solutions: Companion to the C++ Programming Language, Third Edition, by David Vandevoorde (ISBN 0-201-30965-3) - This book describes solutions to a selection of examples from Bjarne Stroustrup's book on standard C++.
  • STL Tutorial & Reference Guide: C++ Programming with the Standard Template Library, by David R. Musser R. and Atul Saini (ISBN 0-201-633-981) - This book introduces the STL and provides the information and techniques you need to become a proficient STL programmer. The book includes a tutorial, a thorough description of each element of the library, numerous sample applications, and a comprehensive reference.
Object Oriented Programming
The following books are available at leading technology bookstores:
  • Object-Oriented Design with Applications by Grady Booch (ISBN 0-805-35340-2) - Object oriented analysis and design concepts and implementation, using C++ and a unified notation that incorpoartes Booch and other widely used methods.
  • Design Patterns: Elements of Reusable Object-Oriented Software , by Erich Gamma, Richard Help, Ralph Johnson, John Vissles (ISBN 0-201-63361-2) - A catalog of 23 design patterns to help solve commonly occurring design problems. Based on real-world examples. Each pattern describes the circumstances in which it is applicable, when it can be applied in view of other design constraints, and the consequences and trade-offs of using the pattern within a larger design.
  • Design Patterns for Object-Oriented Development by Wolfgang Pree (ISBN 0-201-42294-8) - Conceptual background in the development and reuse of semifinished software architectures (application frameworks) rather than single components. These frameworks embody foundational components and their behavioral interaction. A design example of a hypertext system is illustrated with ET++, the famed user-interface framework available in the public domain.
C++ Courses

Rogue Wave Software, Inc. provides courses on their Standard C++ Library, Tools.h++ Library, and other products. For more information, access Rogue Wave site at the following location:

http://www.roguewave.com/products/