我有一個顏色類,它保存着顏色的紅色,綠色,藍色和alpha通道的值。通過爲四個通道指定值,類構造函數允許您創建新的顏色。但是,爲了方便,我還想爲程序員提供一些「預製」顏色。例如,而不必像如何在類中創建不可變的靜態公共對象?
DrawBox(new Color(255, 0, 0));
你就可以說
DrawRectangle(Color::Red);
哪裏Color.Red是Color類裏面生活色彩的一個實例。如何在Color類中聲明Color的這些實例?我確定這個技術有個名字,但是當我在網上尋找幫助時,我不知道要使用哪些搜索條件。
我沒有使用任何內置或公開的類或庫,因爲這是創建基本圖形堆棧的個人練習的一部分。
感謝您的幫助!
你使用C++ 11嗎? –
另外:你的兩個例子並不相同。第一個將一個*指針*傳遞給DrawBox(),而第二個可能傳遞對象。 –
@Benjin你要找的名字是'enum'。 C++本身只支持整數枚舉,但有很多方法可以獲得類似的結果(請參閱答案)。其他語言(例如Java)支持任何類型的枚舉。 – Coincoin