C++ 库和框架如何添加标准库中没有的功能?

问题描述

是否所有 C++ 库和框架都依赖于标准库并扩展 C++ 中已有的功能?如果不是,他们如何为语言添加额外的功能

例如,我读到C++标准库没有音频函数,那么OpenAL是如何做到的?

如果所有的库和框架都依赖于标准库,是否可以不借助任何库,只用标准库和纯 C++ 来做所有事情?

解决方法

C++ 作为一种语言允许您编写任何您想要的程序。这可以包括编写一个自己什么都不做的程序,而是提供函数和类供其他人使用。那就是所谓的图书馆。

如果没有音频库你就不能做音频的事情,那么音频库应该怎么写?

使用图书馆通常是一种经济选择。如果可以的话,通常不编写代码是值得的。在极端情况下,如果某个特定的库作者与特定的硬件供应商签订了保密协议,那么与使用使用机密知识编写的库相比,对硬件控制方式进行逆向工程的努力可能是巨大的。