Мне нужно создать тип данных Percent
, который бы хранил в себе только целые числа от 0 до 100, и чтобы логика была такая:
Percent a;
a = 101; // В a бы клалось не 101, а 100.
a = -5; // В a клалось бы не -5, а 0.
И так далее. Как это можно реализовать?
На C++ давно не писал, но видимо вам нужно что-то типа:
class Percent {
uint8_t value;
public:
const static int MAX_VALUE = 100;
const static int MIN_VALUE = 0;
Percent(int v) {
if (v > MAX_VALUE) {
this->value = MAX_VALUE;
} else if (v < MIN_VALUE) {
this->value = MIN_VALUE;
} else {
this->value = v;
}
}
operator int() const { return this->value; }
};
Percent p = 128;
std::cout << p << std::endl;
// Output:
// 100
p = -5;
std::cout << p << std::endl;
// Output:
// 0
Небольшой пример:
class Procent {
public:
...
Procent& operator =(int v) {
_v = v >= 100? 100: (v < 0? 0: v);
return *this;
}
...
private:
int _v;
}
Остальное аналогично
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
У меня есть меню для мобильной версии; я не силен в js и jqueryЯ не понимаю, как сделать так, что бы при нажатии на ссылку меню закрывалось
Есть сайт Ссылка который я максимально пытаюсь оптимизировать под разные устройстваПока что работаю с главной странницой
Здрасте, вот есть такое задание, уже пол ночи сижу, не могу понять как это сделать, просто еще не проходили этот материал, но задание уже далиПомогите...
Если я обращаюсь к элементу с индексом + 1 - ничего не работаетЕсли index - 1 - все ОК