Microsoft Visual Studio 2010 で sockaddr_storage を使用しているときに、誰かがメモリ破損を経験しましたか? これは私が問題を抱えている種類のコードです:
class Base
{
public:
Base(){a=1};
int a;
sockaddr_storage addr;
int b;
};
class Derived1 : public Base
{
public:
Derived1() {a=2};
int c;
}
class Derived2 : public Derived1
{
public:
Derived2() {a=3;};
int d;
}
Derived2 コンストラクターでは、オブジェクト内の 'a' へのオフセットが 4 バイトずれており、'a' を 3 に設定するとメモリが破損します。
よろしく、ドゥサン・ムドリッチ。