设为首页 加入收藏

TOP

1.1.2 C++中的API
2013-10-07 16:24:20 来源: 作者: 【 】 浏览:79
Tags:1.1.2 API

1.1.2 C++(www.cppentry.com)中的API

严格来说,API只是简单描述了如何与组件进行交互。也就是说,它对某个组件进行抽象,并提供功能说明。事实上,许多软件工程师更喜欢将API这个缩写扩展为Abstract Programming Interface(抽象编程(www.cppentry.com)接口),而非Application Programming Interface。

C++(www.cppentry.com) 中,API一般包括一个或多个头文件(.h)以及辅助文档。某个特定API的具体实现通常是可以被链接到最终用户程序中的库文件,它也可以是静态库,如Window操作系统下的.lib文件,Mac OS X和Linux下的.a文件;又或者是动态库,如Windows操作系统下的.dll文件,Mac操作系统下的.dylib文件,或Linux下的.so文件。

C++(www.cppentry.com) API通常会包含如下的元素。

(1) 头文件:一组.h头文件。头文件定义了接口,使得客户端代码能够针对该接口进行编译。开源API还包括API实现的源代码(.cpp文件)。

(2) 类库:一个或多个静态库或动态库文件,它们提供了API的具体实现。客户端可以把它们的代码和这些库文件进行链接,从而为它们的应用程序添加相应的功能。

(3) 文档:如何使用API的概述信息,通常包括为API中所有的类和函数自动生成的文档。

微软的Windows操作系统API(通常被称为Win32 API)就是一个非常知名的API,它是C函数、数据类型和常量的集合,可用来编写在Window平台下的应用程序。它包括文件处理函数、进程与线程管理函数、创建图形用户界面的函数、与网络交互的函数等。

Win32 API是纯C API,而非C++(www.cppentry.com) API。可以在C++(www.cppentry.com)程序中直接使用C API,C++(www.cppentry.com) API中的杰出代表是STL(Standard Template Library,标准模板库)。STL包含了一组容器类、对容器中元素进行遍历的迭代器以及作用于容器的各种算法(Josuttis, 1999)。例如,该算法集合中包括很多高级操作,比如std::search()、std::reverse()、std::sort()和std::set_intersection()。因此,STL提供的是操作元素集合任务的逻辑接口,且没有暴露每个算法内部的实现细节。

提示

API是软件组件的逻辑接口,隐藏了实现这个接口所需的内部细节。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇1.1.1 契约和承包人 下一篇1.2 API设计上有什么不同

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Redis 分布式锁全解 (2025-12-25 17:19:51)
·SpringBoot 整合 Red (2025-12-25 17:19:48)
·MongoDB 索引 - 菜鸟 (2025-12-25 17:19:45)
·What Is Linux (2025-12-25 16:57:17)
·Linux小白必备:超全 (2025-12-25 16:57:14)