JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris Studio 12.3:C++ 用户指南     Oracle Solaris Studio 12.3 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

第 1 部分C++ 编译器

1.  C++ 编译器

2.  使用 C++ 编译器

3.  使用 C++ 编译器选项

第 2 部分编写 C++ 程序

4.  语言扩展

5.  程序组织

6.  创建和使用模板

7.  编译模板

8.  异常处理

9.  改善程序性能

10.  生成多线程程序

第 3 部分库

11.  使用库

11.1 C 库

11.2 随 C++ 编译器提供的库

11.2.1 C++ 库描述

11.2.2 访问 C++ 库的手册页

11.2.3 缺省 C++ 库

11.3 相关的库选项

11.4 使用类库

11.4.1 iostream

11.4.1.1 有关传统 iostream 和传统 RogueWave 工具的说明

11.4.2 链接 C++ 库

11.5 静态链接标准库

11.6 使用共享库

11.7 替换 C++ 标准库

11.7.1 可以替换的内容

11.7.2 不可替换的内容

11.7.3 安装替换库

11.7.4 使用替换库

11.7.5 标准头文件实现

11.7.5.1 替换标准 C++ 头文件

11.7.5.2 替换标准 C 头文件

12.  使用 C++ 标准库

13.  使用传统 iostream

14.  生成库

第 4 部分附录

A.  C++ 编译器选项

B.  Pragma

词汇表

索引

11.4 使用类库

通常,使用类库分两个步骤:

  1. 在源码中包括适当的头文件。

  2. 将程序与目标库链接。

11.4.1 iostream

C++ 编译器提供两种 iostream 实现

如果已有 C++ 源,那么代码可能象以下示例一样使用传统 iostream。

// file prog1.cc
#include <iostream.h>

int main() {
    cout << "Hello, world!" << endl;
    return 0;
}

以下示例使用了标准 iostream。

// file prog2.cc
#include <iostream>

int main() {
    std::cout << "Hello, world!" << std::endl;
    return 0;
}

以下命令编译 prog2.cc 并将其链接到名为 prog2 的可执行程序中。该程序在标准模式下编译。缺省情况下,链接包括标准 iostream 库的 libCstd

example% CC prog2.cc -o prog2

11.4.1.1 有关传统 iostream 和传统 RogueWave 工具的说明

所谓的“传统”iostream 是指 iostream 的初始 1986 版本,已被 C++ 标准替代。它可通过 -library=rwtools7,iostream 选项选择。没有两个“传统”iostream 的实现是相同的,因此除了已过时之外,使用它的代码还不可移植。请注意,该库和选项在以后的 Oracle Solaris Studio 发行版中将停止使用。

随传统 Sun Studio 和 Oracle Studio 提供的 RW Tools.h++ 工具集最初发布于 1990 年,且至今未有显著的更新。它的 timedate 类具有无法修复的关于夏时制时间的严重问题。(该工具集的功能当前在 C++ 标准和 BOOST 之类的开源库中可用。)RW Tools.h++ 可通过 -library=rwtools7-library=rwtools7_std 选项选择,并且在以后的 Oracle Solaris Studio 发行版中将停止使用。

11.4.2 链接 C++ 库

下表显示了用于链接 C++ 库的编译器选项。有关更多信息,请参见A.2.49 -library=l[ ,l...]

表 11-2 链接 C++ 库的编译器选项

选项
传统 iostream
-library=iostream
Tools.h++ 版本 7
-library=rwtools7,iostream

-library=rwtools7_std

Tools.h++ 版本 7 调试
-library=rwtools7_dbg,iostream

-library=rwtools7_std_dbg

垃圾收集
-library=gc
STLport 版本 4
-library=stlport4
STLport 版本 4 调试
-library=stlport4_dbg
Apache stdcxx 版本 4
-library=stdcxx4
Sun 性能库
-library=sunperf