Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
💸 Как сделать бизнес проще, а карман толще?
Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое раписание, но и напоминать клиентам о визитах тоже.
Проблема в том, что средняя цена по рынку за такой сервис — 800 руб/мес или почти 15 000 руб за год. И это минимальный функционал.
Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.⚡️ Для новых пользователей первый месяц бесплатно. А далее 290 руб/мес, это в 3 раза дешевле аналогов. За эту цену доступен весь функционал: напоминание о визитах, чаевые, предоплаты, общение с клиентами, переносы записей и так далее. ✅ Уйма гибких настроек, которые помогут вам зарабатывать больше и забыть про чувство «что-то мне нужно было сделать». Сомневаетесь? нажмите на текст, запустите чат-бота и убедитесь во всем сами! Void test()
{ D1 d(6); // Ой: d.x не инициализирован D1 e; // Ошибка: D1 не содержит конструктор по умолчанию
Вы можете защитить свои ноги путем использования инициализаторов членов (member-initializer): struct D1: B1 { using B1:: B1; // Неявно объявляет D1(int) int x{0}; // поле x проинициализировано }; Void test() { D1 d(6); // d.x равно 0 }
См. также:
Статические утверждения (утверждения времени компиляции) – static_assert Статические утверждения (утверждения времени компиляции) содержат константное выражение и строковый литерал: Static_assert(expression, string);
Компилятор вычисляет выражение, и если результат вычисления равен false (т.е. утверждение нарушено), выводит строку в качестве сообщения об ошибке. Например: static_assert(sizeof(long)> =8, " 64-bit code generation required for this library."); struct S { X m1; Y m2; }; static_assert(sizeof(S)==sizeof(X)+sizeof(Y), " unexpected padding in S");
static_assert полезен для явных заданий некоторых утверждений о программе и ее поведении. Обратите внимание, что поскольку выражение static_assert вычисляется во время компиляции, то оно не может применяться для проверки утверждений, зависящих от значений времени выполнения. Например: int f(int* p, int n) { // Ошибка: выражение в static_assert() не является // константным выражением static_assert(p==0, " p is not null"); //... }
(вместо этого следует проверить выражение и сгенерировать исключение в случае неудачи). См. также:
Long long -- более длинное целое Целочисленная переменная, размером, по крайней мере, 64 бита. Например: long long x = 9223372036854775807LL;
Нет, никаких long long long, и long нельзя рассматривать как short long long. См. также:
Nullptr -- литерал для задания нулевого указателя nullptr – это литер, который задает нулевой указатель; это не целочисленное значение: char* p = nullptr; int* q = nullptr; char* p2 = 0; // 0 все еще работает и p==p2 Void f(int); void f(char*); f(0); // вызов f(int) f(nullptr); // вызов f(char*)
|