Привет всем, я работаю над очисткой моего кода от предыдущих семестров.
Ранее я создал 151 библиотеку образцов цветов на С ++. Однако из-за моего нехватки времени и отсутствия опыта я создал его целиком как блок определений. Который, для жесткого кодирования значений в пятна работал нормально. Однако у этого подхода есть некоторые очевидные недостатки.
Что я планировал до сих пор, так это создание пространства имен 'swatch', и внутри пространства имен у меня будет перечисление допустимых цветов. У меня также была бы функция 'getSwatch', или что-то подобное, которая возвращала бы vec3 (мой класс представляет вектор из 3-х элементов с некоторой хорошей функциональностью), и функция использовала бы оператор switch для прохождения через действительные образцы.
Это будет выглядеть примерно так:
namespace swatch{
enum color{
red,
blue,
green
}
inline
const vec3 getColor(const color& c){
// Switch and return red blue or green.
}
}
Мой вопрос: Я хотел бы знать, как вы могли бы предложить это сделать? Преимущества предварительной работы и удобства использования - это то, что меня больше всего интересует.
Заранее спасибо, друзья,
Удачного кодирования.
Редактировать: Я просто изменил пример, чтобы придать больше смысла людям, которые не знают, как я использую свой класс vec. (т.е. все, кроме меня). Кроме того, вы можете просто посмотреть на другие anwsers для использования. Они сделали правильное предположение о передаче значений rgb в конструктор, это не то, как я это сделал, но я все еще могу прекрасно следовать тому, что вы имеете в виду.