完全にAda型システムの学習演習として、私は3つの型(つまり、1つの型と2つのサブ型)を作成しようとしていました。
Month_Type
、すべての月の列挙Short_Month_Type
、Month_Type
30日で月のみを持つサブタイプFebruary_Month_Type
、2月だけのサブタイプ
サブタイプはrange
メカニズムを使用する必要があるようですよね?(他の種類のサブタイプはありますか?)連続した範囲で機能させるには、Month_Type
列挙を次の順序で並べる必要がありました。
type Month_Type is (February, April, June, September, November, January, March, May, July, August, October, December);
明らかに、これは数か月の自然な順序ではなく、人々/私がやろうとしていることMonth_Type'First
や、1月になることを期待していることを見ることができました。
したがって、このばかげた例からの2つの一般的な質問:
- 範囲ではなく、基本タイプの特定のコンポーネントを指定するサブタイプを持つことはできますか?
- どういうわけか、月を置いた順序の実装の詳細を非表示にできますか(たとえば、'Firstを非表示にします)?
ありがとう!