C++ 有没有关于如何使用句柄的教程?
C++ Are there any tutorials on how to use handles?
我正在尝试创建一个广泛使用HANDLE
的应用程序。 我已经对这些教程进行了多次搜索,但没有找到。 有没有关于如何创建HANDLE
的教程?
注意:我想要一个关于如何创建一个包含Create
、Get
和Delete
函数的HANDLE
的教程。
通常,句柄只是您提供给用户的东西,用于表示您内部拥有的一些数据,以防止他们玩弄它。 一种简单的方法是简单地使用指针。
公共标头:
struct my_private_data;
typedef my_private_data* MPDHANDLE;
MPDHANDLE get_new_object();
void do_task(MPDHANDLE hnd);
void release(MPDHANDLE hnd);
这就是你给人们的。 他们对my_private_data一无所知,所以编译器会让他们很难做错任何事。 而且没有其他函数接受MPDHANDLE,所以他们很难搞砸它。
在内部,您的库具有以下代码:
struct my_private_data {
void do_task();
};
MPDHANDLE get_new_object() {return new my_private_data();}
void do_task(MPDHANDLE hnd) {hnd->do_task();}
void release(MPDHANDLE hnd) {delete hnd;}
这很简单。
相关文章:
- 带有资源句柄的TensorFlow自定义C++操作
- 假定 Windows 伪句柄的值是否安全/定义?
- 在张量流中创建新操作时指定形状句柄的形状(输出张量的秩问题)
- CGAL 顶点句柄的生命周期
- C++ 有没有关于如何使用句柄的教程?
- 在多线程中使用curl句柄的错误工作方法的替代方法
- C++:通过进程id、进程句柄和标题名称从进程中获取唯一窗口的窗口句柄的最佳方法
- 获取进程句柄的详细信息
- 字符冲刺f()句柄的限制
- 取消对句柄的指针引用会给我"illegal, right operand.."?
- 删除具有打开句柄的文件
- 如何使用Windows应用商店C++在没有窗口句柄的情况下渲染路径几何体
- 需要通过引用类传递Windows事件句柄的帮助
- 在给定模块句柄的情况下枚举模块的段
- 按句柄的目录路径
- 获取当前进程中所有句柄的名称
- OpenCppCoverage找不到句柄的路径
- 依赖于Windows句柄的类型是否为指针
- 使用FindFile和文件句柄的c++内存泄漏
- 有哪些工具可以帮助查找句柄的内存泄漏