C# で無理やり部分範囲型っぽい事をするためにこんなの書いてみたけど、当たり前だけど実行時にしかエラー出ない・・・><
//明示的な型変換の時に範囲チェックするという方式><;
class BubunHanniGataModoki
{
//大きく略
//intからの明示的な型変換の宣言
public static explicit operator BubunHanniGataModoki(int v)
{
if (v > 2 && v < 5)
{
return new BubunHanniGataModoki(v);
}
else
{
throw new ArgumentOutOfRangeException("3 か 4 専用でした!><;");
}
}
}
そんなのあったっけ・・・?>< "「var」を右クリックして表示されるコンテキスト・メニューから[リファクタ]-[実際の型の挿入]を選択することで、varを実際の型に置き換える機能" C#への期待。アンダースからの返答(3/3) - @ IT http://www.atmarkit.co.jp/fdotnet/insiderseye/20060215cscommunity/cscommunity_03.html
Adaだ・・・><
TeXCAD / Code / [r65] /tc.ads https://sourceforge.net/p/texcad/code/HEAD/tree/tc.ads
人が死なない分野ではこれとかがAdaで書かれてるらしい・・・><(今知った><;)-- TeXCAD 日本語情報トップページ - OSDN https://ja.osdn.net/projects/sfnet_texcad/
Adaは今でも、失敗したら人が死ぬ分野では現役の言語だよリスト>< --
Who's Using Ada? Real-World Projects Powered by the Ada Programming Language November 2014 - Michael B. Feldman http://www2.seas.gwu.edu/~mfeldman/ada-project-summary.html
移植性の良さは、実際に使用するユーザー(Cで言うならCでプログラミングする人)からみたデザインの正しさとは別だし、
https://mastodon.cardina1.red/@lo48576/99697943444572728
にも反するかも><