将 void 指针分配给另一个 void 指针

assigning void pointer to another void pointer

将 void 指针分配给另一个 void 指针,这样两个指针都指向同一事物,然后对其中一个进行操作是否安全。

例如我正在尝试做这样的事情:(只是一个例子) HANDLE 类型定义为 void*

HANDLE hPrevious = INVALID_HANDLE_VALUE;

HANDLE hFile = CreateFile(...);

hPrevious = hFile; // assigning

CloseHandle(hPrevious); // now both handles are invalid?

hPrevious = INVALID_HANDLE_VALUE; // now both handles are INVALID_HANDLE_VALUE

// hFile is released

将一个 void* 分配给另一个,然后对其中一个进行操作是否与对两者进行操作相同?

CloseHandle(hPrevious); // now both handles are invalid?

是的,它们现在都关门了。

hPrevious = INVALID_HANDLE_VALUE; // now both handles are INVALID_HANDLE_VALUE

这只会修改 hPrevioushFile 没有改变。在使用 *.

解除引用之前,指针没有任何幽灵般的远距离动作