なんでC++ってCとの互換性を持たせようとしたんだよ
せめてCの構文はextern "C" {}の中だけってことにしとけば
もう少しシンプルにできたと思う