C#は、C++でいうところの

if (Derived* pDerived = dynamic_cast<Derived*>(pBase)) {
  ・・・;
}

みたいなコードが一文&&余計なスコープ無しで書けないのが自分ではかなりぎこちない。