整数を使用して、さまざまな「空間」の値を表すことがよくあります。例えば...
int arrayIndex;
int usersAge;
int daysToChristmas;
理想的には、これらのタイプ「Index」、「Years」、および「Days」のそれぞれに個別のクラスを用意したいと考えています。これにより、誤ってそれらを混同するのを防ぐことができます。Typedef は文書化の観点からは役立ちますが、タイプセーフとは言えません。
ラッパー クラスを試してみましたが、定型文が多すぎて好みに合わなくなりました。簡単なテンプレート ベースのソリューションはありますか、それとも Boost ですぐに使用できるものはありますか?
編集:何人かの人々が、回答で境界チェックについて話しました。これは便利な副作用かもしれませんが、重要な要件ではありません。特に、範囲外の割り当てだけでなく、「不適切な」タイプ間の割り当ても防止したいと考えています。