【发布时间】:2010-11-22 19:59:51
【问题描述】:
class ResourceWrapper
{
int handle = 0;
public ResourceWrapper()
{
handle = GetWindowsResource();
}
~ResourceWrapper() //this line here
{
FreeWindowsResource(handle);
handle = 0;
}
[DllImport("dll.dll")]
static extern int GetWindowsResource();
[DllImport("dll.dll")]
static extern void FreeWindowsResource(int handle);
}
波浪线在指示的行上做什么。
我认为它是按位 NOT 运算符,事实上我并不真正理解那里的整个块,(注释行和后面的括号 blovk),它不是方法,也不是参数或任何东西,它是什么,为什么前面有波浪线?
【问题讨论】:
-
在 C++ 中,这意味着 ~ResourceWrapper 方法是析构函数(清理资源),它看起来像是根据那里的代码执行的。我在 C# 中从未见过。