出力の 20 行目で, それぞれ挙動が違ってしまい,
その理由がいまいちよく解らないのです.

virtual ~X()
のところを
~X()
としてコンパイル実行すると上手くいくのですが,
20 行目の点が足りなくなってしまい, 困ってます.

アドバイス下さい;;

(652-662 長文失礼しました.)