多次元配列をクラスじゃなくてコンパイラ内蔵にして欲しくならない?

for(y) { for(x){
a[x+y*size1] = ...;
}}

みたいなことやってもコンパイラはちゃんとyの項を外に出して最適化してくれるのは分かってるんだけれど、精神衛生上気持ち悪い。

それにa(x, y)みたいにアクセスできるクラスがあっても添え字の計算がクラスの奥深くになると外に出せなくなるし。