私はオープン gl ドライバーに取り組んでおり、#define を使用して一連の定数を定義する必要があります。これらの定数の名前は、それらが表す値とともに繰り返されます。また、ハードウェア固有の別の #define によって設定された最大値によっても制限されます。可能であれば、最大値を使用してこれらの定数を定義したいと思います。
現在、私はそれらを次のように定義しています。
#define GL_MAX_TEXTURE_UNITS 24
#define GL_TEXTURE0 0
#define GL_TEXTURE1 1
...
#define GL_TEXTURE24 24
私は次の行に沿って何かをしたいと思います:
#define GL_MAX_TEXTURE_UNITS 24
#define GL_TEXTURE(SOMETRICKYMACRO)
マクロは、コンパイル時に最初のケースと同等の展開になるように定義されていますが、定数の数を変更したい場合は、GL_MAX_TEXTURE_UNITS を変更するだけで済みます。