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 に答える