Василий Банников, вот по тексту причины блокироввки "с нарушений (Spam - affiliate or webview spam) " я вообще не вижу ни слова о том, кто владеет сайтом. А заблокировали именно за вебвью-онли. Впрочем, это Гугл, они за что угодно могут забанить.
gamess431, скорее всего, не достаточно. Это ведь дублирование пуш-уведомлений обычного браузера. Это правило как раз борется с приложениями, которые используются вместо закладки в браузере.
Андроид это требование или просто пожелание? Можно купить старый терминал оплаты, он на винде и там обычный комп в кастомном корпусе :) Сразу с сенсорным экраном.
Если делать собственный корпус и не нужен большой экран, можно планшет андроидовый приспособить. Аккум выпаять и от БП проводочки напрямую припаять, чтобы 24/7 пахал.
Третий способ: ClipingMask - под слоем создать "обтравочный" слой маску и с Alt кликнуть между этими двумя слоями. Но маска должна быть именно с прозрачностью, а не чёрно-белая.
Если у вас уже ч/б, то второй способ лучше всего подойдёт с созданием маски и копированием в неё контента слоя-маски.
IliaNeverov, Можно на изменение размера задать callback функцию, чтобы не каждый кадр размер проверять и задавать. Название фукнции и прототип колбэка не помню, но сможете нагуглить, если нужно.
xorknown, поэтому я так и не пишу, что совпадает с fwd функций. Не уверен, что это вообще компилируется так, как хотелось. Мне больше нравится явно нульптр приравнивать. Может просто вкус фломастеров у меня такой...
Евгений Шатунов,
HWND window = HWND(); и HWND window(); - это одно и то же, но в первом случае создаётся временный объект типа HWND, который копируется в переменную window (не учитыаем возможные оптимизации компилятором).
Как выше уже написали, для встроенных типов может не обнуляться, я так никогда не пишу, поэтому не буду спорить. По идее, должно бы обнуляться, но я не проверял. Это сделано для единообразия кодирования, если HWND заменить на класс, то будет вызван конструктор по умолчанию. Для встроенног отипа это будет либо ноль, либо вообще ничего не будет. Можешь провести эксперимент, но только в релизе. В дебаге память инициализируется нулями всегда и ошибку не увидишь.
Либо пиши HWND window = nullptr;
Zakhar Delov, А новый Extension_Pack в новую версию нельзя поставить? Там что ли что-то особенное в старой версии, что в новой уже поломали?
Вообще, бесят дико "эти ваши вузы". В примерно 2010 году приходилось писать курсовые в БорландС++ под dos...
Qualiant, Суммируйте интервал между кадрами, если сумма больше или равна заданному интервалу, то пересчитывайте логику. Если активных объектов будет очень много, то удобнее обновлять состояние отдельных объектов с большим временным интервалом. Напрмиер, траектория движения юнита будет обновляться раз в 5 секунд, но моменты выполения этого обновления для разных юнитов будут разными. Т.е. для каждого юнита будет считаться время с последнего обновления.
Видимо, я слишком буквально понял слово "таймер". Именно системный таймер, генерирующий события через заданные интервалы - не нужен. А переменная, в которой суммируется или всё время игры или какие интервалы - очень нужная и их может быть столько, сколько удобно для реализации игровой логики. Скорее всего, такой же таймер будет в каждом активном объекте и в статичных объектах, у которых есть анимация.
Про WinAPI плюсану. По нужде много лет пришлось программировать голый WinAPI и MFC. Теперь появилась возможность испоьзвоать что-то ещё и ОЧЕНЬ некомфотно переходить на QT. Иная идеология, всё по другому, всё непривычно. Лучше сразу изучать QT, чтобы не привыкать к плохому, а сразу учиться делать как белый человек.
*опускаться до WinAPI не стоит до тех пор, пока есть альтернативы
Евгений Шатунов, Нет. В стандарте указано А и Б. Если А и Б выполняется, то тривиальный. Если не выполняется, то не тривиальный. Оговорка в том, что выполнение А и Б не гарантирует, что тип тривиальный, хотя в приведённой ВАМИ ссылке указано, что у тривиального типа выполняется А и Б. Т.е. А и Б это необходимое, но не достаточное условие. Достаточность в стандарте не указана, потому что определяется логикой программы. Фактически, по стандарту, вообще не может существовать тривиального типа, содержащего указатель, потому что невозможно доказать его тривиальность, не имея всего кода приложения. Один и тот же класс может быть тривиальным и не тривиальным в зависимости от использующего класс кода.
Евгений Шатунов, Ещё раз повторю, чтобы вы точно поняли. Тривиальный конструктор копирования создаётся компилятором. Если вы сами его пишите, то это нетривиальный конструктор и объект перестаёт быть тривиальным. И ваш пример ассертит тогда.
Евгений Шатунов, Повторяю. А - содержит только тривиальные типы, Б - имеет тривиальный конструктор копирования. В вашем примере тривиальный конструктор копирования, поэтому А и Б выполняется. Напиши конструктор копирования и сработает ассерт.
Оговорка - не из стандарта. Сама оговорка: если объект не владеет адресуемым объектом, то он может быть тривиальным. т.е. допускает побайтовое копирование указателя без нарушения инварианта. Это настолько очевидные вещи, что я не понимаю, о чём мы говорим. Иначе класс прсто неправильно реализован. Правильную и неправильную реализацию формализовать нельзя (без явной аттрибуции), потмоу что и тот и тот код может быть верным в зависимости от "оговорок".
А и Б сложите вообще через & из той ссылки, которую вы дали. Сами пишите неправильныи пример, проверяющий не то, о чём мы говорим и используете это в качестве доказательной базы...
Вообще, я очень надеюсь, что в стандарте это помечено как UB.
Евгений Шатунов, По вашей ссылке написано, тип тривиальный, если А(скаляр) и Б(тривиальный коснтруктор копирования). Б не выполняется, значит - не тривиальный. Мне не с чем соглашаться.
В первом же сообщении я написал "и с кучей оговорок об использовании". Понимание происходящег и, что воообще там программируешь попадает под "оговорки".
Евгений Шатунов, Адресуемый указателем объект находится по указателю вне памяти "хозяина", а не по значению и имеет время жизни до удаления в деструкторе или до падения программы (если не реализован сборщик мусора). Всё, мне надоел этот офтоп. Если вам интересно, читайте стандарт. Мне не интересно пререкаться по всяким придиркам.