我上周缺课,所以我正在看在线讲座(我的教授记录了他的讲座),他一直在提到“包装器”。
我不记得他解释过包装是什么。他这是什么意思?我用谷歌搜索但无济于事。我们学习数据结构的语言是 C。谢谢!
我上周缺课,所以我正在看在线讲座(我的教授记录了他的讲座),他一直在提到“包装器”。
我不记得他解释过包装是什么。他这是什么意思?我用谷歌搜索但无济于事。我们学习数据结构的语言是 C。谢谢!
包装器通常是一些对象或函数,它将完整的实现隐藏在更易于使用的接口后面。通常,围绕二叉搜索树的包装器对象将是一个导出诸如“插入”、“删除”和“查找”之类的好函数的对象,而这些函数中的任何一个都没有显式的节点指针。这样,可以使用二叉搜索树,而不会将表示的详细信息泄露给客户端。
您有时还会看到术语“包装器”用于表示位于其他软件之上并简化它的任何软件。例如,一些用于网络的库可能是套接字 API 的包装器——它们使用套接字作为底层表示,但不将其暴露给客户端。这样,客户端可以使用更简单的库,而不用关心套接字 API 的所有低级细节。您有时还会看到使用 C++ 对象的 C 代码周围的 C++ 包装器,这些对象具有构造函数、析构函数、封装等,以简化 C 代码。
包装函数有时用于使递归函数更易于编写。在某些情况下,您可能有一个递归函数,它需要额外的参数才能正常运行。包装函数可能只是使用适当的参数调用递归函数。这样,您可以直接调用包装函数而不是调用递归函数,传入一堆其他参数。
希望这可以帮助!