![]() |
1
2
“c”库函数
在C++中,我们更自然的是:
C API通常不以这种方式实现。 C库函数返回一个成功的代码,并根据上面的情况有条件地改变传入/传出变量的地址,这是很正常的。 |
![]() |
2
5
这是一种方法 模仿 在C中传递引用,否则只有传递值。 |
![]() |
3
1
这种方法隐藏了实现。它加速了代码的编译。它允许升级库使用的数据结构,而不破坏使用它们的现有代码。最后,它确保该对象的地址永远不会更改,并且您不会复制这些对象。 这里是如何实现单指针版本的方法:
或C++等价的,没有任何指针:
现在考虑以下函数:
作为库的用户,您不再需要知道ft结构中的内容,甚至不需要知道它的大小。你不需要
|
![]() |
Community wiki · safe_ptr实现 1 年前 |
![]() |
lplplplp · 为什么不能访问函数外的结构指针 2 年前 |
![]() |
Fabio · 在c中将指针赋给常数指针++ 2 年前 |
![]() |
Gabe Tucker · 无法在golang中分配接口对象指针 2 年前 |