min/max対策
windows.hのmin/maxは困る - 檜山正幸のキマイラ飼育記 メモ編の続き。
意外とアッチコッチで引っかかるので、#undef min 、 #undef max で消している。一方で、Windows.hにmin/maxマクロがあるのを想定してそれを使っている所もあった。min/maxという名前がありふれた名前で、しかもマクロっぽくないのが困る。次のマクロを定義して、これを使うことにした。
#ifndef MIN_VAL # define MIN_VAL(x, y) ((x) < (y) ? (x) : (y)) #endif // MIN_VAL #ifndef MAX_VAL # define MAX_VAL(x, y) ((x) < (y) ? (y) : (x)) #endif // MAX_VAL
この名前なら、バッティングのリスクが小さくなるし、マクロだと認識しやすい。