[英]Preprocessor macro with commas in C++
我正在完成arcsynthesis OpenGL教程,該教程定期使用宏,我一直在閱讀某些內容,如果可能,應該避免使用。 我想知道是否還有另一種方法可以執行以下操作而無需手動填寫值(或者那是我應該做的):
#define GREEN_COLOR 0.75f, 0.75f, 1.0f, 1.0f
const float vertexData[] = {
..., //Vertex positions
GREEN_COLOR,
GREEN_COLOR,
GREEN_COLOR,
..., //Rest of the colors
}
預處理器不關心逗號,空格等 。 它將它們視為其他任何字符,並簡單地用它們替換文本。 唯一需要注意的是換行符,但行尾的\\
可以照顧換行符。 例如:
#define GREEN_COLOR 0.75f,\
0.75f,\
1.0f, \
1.0f
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.