JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris Studio 12.2:C++ 用户指南
search filter icon
search icon

文档信息

前言

第 1 部分C++ 编译器

1.  C++ 编译器

2.  使用 C++ 编译器

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

第 2 部分编写 C++ 程序

4.  语言扩展

5.  程序组织

6.  创建和使用模板

7.  编译模板

8.  异常处理

9.  改善程序性能

10.  生成多线程程序

第 3 部分库

11.  使用库

12.  使用 C++ 标准库

13.  使用传统 iostream

14.  使用复数运算库

15.  生成库

15.1 认识库

15.2 生成静态(归档)库

15.3 生成动态(共享)库

15.4 生成包含异常的共享库

15.5 生成专用的库

15.6 生成公用的库

15.7 生成具有 C API 的库

15.8 使用 dlopen 从 C 程序访问 C++ 库

第 4 部分附录

A.  C++ 编译器选项

B.  Pragma

词汇表

索引

15.7 生成具有 C API 的库

如果要生成以 C++ 编写但可用于 C 程序的库,必须创建 C API(application programming interface,应用程序编程接口)。为此,应先使所有导出的函数为 extern "C"。注意,只有在全局函数中才能够完成该操作,在成员函数中不行。

如果 C 接口库需要 C++ 运行时支持,且要使用 cc 进行链接,则在使用 C 接口库时,还必须用 libC(兼容模式)或 libCrun(标准模式)链接应用程序。(如果 C 接口库不需要 C++ 运行时支持,就不必用 libClibCrun 进行链接。)归档库与共享库的链接步骤是不同的。

提供归档的 C 接口库时,必须提供如何使用该库的说明。

提供共享的 C 接口库时,必须在生成库时创建对 libClibCrun 的依赖性。如果共享库具有正确的依赖性,就不必在使用该库时将 -lC-lCrun 添加到命令行。

如果要删除对 C++ 运行时库的任何依赖性 ,应该在库源文件中强制应用下列代码规则: