struct S {
 int a;
 int b;

 void clear() {
  ZeroMemory(this, sizeof(*this));
 };
}

こういうのもマズイ?