一応
コンストラクタも単純に
complex(double _re, double _im) : re(_re), im(_im) {}
としてるだけ。
代入演算子も同じく。

1000万回ループで自作、STLともに

for (int i = 0; i < 10000000; i++) {
  a = b*c;
}

を実行して時間測ってます。