foreach(4)

解決(`・ω・´)

#define foreach( type , object , iteration ) \
    for( Iterator ___iterator = iteration.getIterator() , *___tempptr = (Iterator*)1 ; \
    ___iterator.HasNext() && ___tempptr != null ; ___iterator.MoveNext() ) \
        if( (___tempptr = null) == null ) \
            for( type& object = *(type*)___iterator.GetCurrent() ; \
            ___tempptr == null ; ++___tempptr )

無事 break 出来るようになりましたヽ(´ー`)ノ


break すると ___tempptr が null であるという事実を利用してます。