あ、こういうのはStorategyとは言わないか
知ったかぶりしてしまった…。ごめん

いずれにせよ構造体のままでは「あとあとaを使う」ときに困るはず
インターフェースなり、基底クラスなりとして
A、B、Cで共通する機能をもったクラスを定義しておく必要がある