我已经在某处阅读了此代码段,但我无法理解它的含义。

/** Use strong typing for ODP types */
#define odp_handle_t struct {} *


以上代码段的意义是什么?

最佳答案

此代码段定义了符号odp_handle_t,该符号表示资源的不透明句柄。它是不透明的,因为它是指向空结构的指针。它指向的东西不会暴露给用户。之所以称为句柄,是因为它不直接指向资源,而只是标识它。内部实现知道如何使用此句柄访问所需的资源。这有助于保持客户端代码和API实施之间的独立性。最后,强类型化部分来自以下事实:它是指向类型(空结构)的指针,而不是空指针。

10-07 13:22
查看更多