私はこの状況に遭遇しました。私は本当にトリッキーだと思います。私には2つのクラスがあります:それぞれ12時間と24時間ベースで時間を維持するtime12とtime24。どちらも、他のタイプへの変換を処理するための個別の変換関数を備えているはずです。ただし、最初にtime 12を宣言すると、time24クラスが後で宣言されるため、変換関数のプロトタイプの「time24」は未定義になります。だから私は今何をしますか?私はそれを内部で宣言し、2番目のクラスの後で定義することさえできません。んで、どうする?
class time12
{
operator time24() //time24 is undefined at this stage
{
}
};
class time24
{
};