0

为什么这ZeroMemory(&socketAddress, sizeof(Connection::socketAddress));行得通,但这行不通?

ZeroMemory(&Connection::socketAddress, sizeof(Connection::socketAddress));

我收到此错误:error C2664: 'memset' : cannot convert parameter 1 from 'sockaddr_in Connection::* ' to 'void *'

4

1 回答 1

2

&Connection::socketAddress是成员指针。它本身不是一个指针,而是一种在给定指向该类的指针的情况下获取指向该类的特定成员的指针的方法。ZeroMemory不能接受,因为它实际上并没有指向任何真实的记忆;它需要更多信息(指向包含该成员的类的实例的指针)才能真正获得真正的指针。

查看这个问题以获取有关成员指针的更多信息。

于 2013-05-18T23:09:03.543 回答