Aidar
Оказывается это объект класса потомка
Anatoly
прилетает указатель для удаления или для использования?
Anatoly
если для удаления - ошибка в проектировании иерархии
Anatoly
если для использования - все в порядке
Ioann_
Так, ребят, а qt позволяет выбрать компилятор для сборки и т.п ?
Ioann_
Или тут тупо надо прилинковать его lib ?
Ioann_
Я если что, просто на VS с плагином сижу, но есть нужда попробовать собрать so
Ioann_
Блин, только mingw под win ? So bad.
@ENERGY_STAFF
ребят при запуске дистрибутива спрашивает "Разрешить этому приложению вносить изменения на вашем устройстве". как релизовать это в своем приложении? подскажите куда копать
@ENERGY_STAFF
нужно чтобы при запуске так же запрашивало
RL_077
Ребят кто сталкивался с написанием графических квестов на с++?
RL_077
Выучил синтаксис, работал на примерах в консольных приложениях
Anonymous
нужно чтобы при запуске так же запрашивало
Создай манифест и включи в нём получение повышенных прав при запуске. Это называется User Account Control.
RL_077
Теперь что, переучиваться:/
@ENERGY_STAFF
Создай манифест и включи в нём получение повышенных прав при запуске. Это называется User Account Control.
а в студии тоже манифест нужен? я ниразу манифесы не юзал, можт это в коде как-то сделать?
Anonymous
а в студии тоже манифест нужен? я ниразу манифесы не юзал, можт это в коде как-то сделать?
Создай в проекте манифест средствами студии на основе стандартного шаблона, затем в свойствах проекта подключи его и он начнёт использоваться при сборке.
Constantine
Constantine
И редкий третий случай с протектед деструктором
Mikhail
мнээ, что
-fdevirtualize
Berkus
-fdevirtualize
Это ничего не гарантирует. Attempt to convert calls to virtual functions to direct calls.
Berkus
vtbl это не отменяет
Mikhail
Это ничего не гарантирует. Attempt to convert calls to virtual functions to direct calls.
Я думаю в случае с пустыми виртуальными деструктлрами это сработает
Berkus
это вообще никак не связано с пустотой или непустотой деструкторов
Alexander
хай всем, есть кто-нить из игроделов, кто юзает flare-engine?
Олександр
#chatlist
Alexander
спс
Alexander
кто нить юзает в коде unique_ptr и move semantics? я чето не понимаю, вот передал я владение объектом а по указателю потом "случайно" дернул .get() и получил.. ну понятно что получил в итоге. Немогу никак понять в чем тогда uniqness его?
Berkus
после передачи юник пойнтера гетом не машут
Alexander
в том что только один владелец может быть
ну ясен-красен, дак а че он ниче не гаратирует то. ну я с таким же успехом raw pointer могу передавать в функцию, а потом не махать оператором *
Alexander
кароче пока я не понял этот дзен
Александр
ну сам дурак, если в ногу стреляешь
Alexander
после деаллокации всмысле не махать *
cyberzx 🇷🇺
А какие гарантии нужны? В С++ с этим плохо. Почти любое правило можно обойти. Ты конечно можешь сделать #define private public, но нельзя же после этого говорить, что private ничего не гарантирует
Alexander
А какие гарантии нужны? В С++ с этим плохо. Почти любое правило можно обойти. Ты конечно можешь сделать #define private public, но нельзя же после этого говорить, что private ничего не гарантирует
да не, я думаю не совсем корреектный пример. uniq_ptr это часть языка теперь и он, как часть языка, работая с другой частью языка такой как MS недолжен давать таких уж совсем провалов, иначе весь его смысл отрачивается
cyberzx 🇷🇺
Так и тут. Если ты вытаскиваешь Raw указатель, то наверняка знаешь что делаешь. Указатель этот нельзя нигде сохранять и никуда передавать. scope у него должен быть уже, чем у unique_ptr.
Aidar
Какая должна быть реализация у штуки которую вы хотите то?
cyberzx 🇷🇺
По гет от кого?
Aidar
Юник поинтер гарантирует уникальность владения. Сырые указатели ничего не говорят о владении
Alexander
Какая должна быть реализация у штуки которую вы хотите то?
ошибка компиляции при попрытке вызвать .get после передачи ownership
cyberzx 🇷🇺
Объект уничтожен, вы не можете вызвать get у уничтоженного объекта
Alexander
Олександр
тем не мене по get() вы получите мусор
А что вы хотели? Все верно.
Alexander
Это невозможно сделать
да блин так в rust сделано
Alexander
я хочу понять что имели в виду авторы c++ когда делали это, так как хочу писать на с++
cyberzx 🇷🇺
от uniq_ptr
Мусор нельзя получить. Либо вы из него мувнули и передали владение, либо сделали .reset. В этих случаях get будет возвращать nullptr
cyberzx 🇷🇺
что не гарантированно?
Alexander
ща попробую пример накидать, чето какой-то рассинк в понимании
cyberzx 🇷🇺
Returns a pointer to the managed object or nullptr if no object is owned.
Олександр
Ага, ок
Alexander
блин след станция уже моя, не накидаю. но сегодня накдию попозже, я хочу таки разобраться
Aidar
ошибка компиляции при попрытке вызвать .get после передачи ownership
Эта ошибка поди работает только в эпсилоне местах
Berkus
но мусор нельзя получить, там либо указатель либо nullptr
Berkus
если ты получил указатель и сохранил его, то тут как бе к unique_ptr ниакких претензий
Aidar
Просто я не понимаю как рантайм гарантировано проверить в компильтайме
Berkus
Просто я не понимаю как рантайм гарантировано проверить в компильтайме
ну борроу чекер в расте же справляется - с помощью явных аннотаций времени жизни
Berkus
только с гибкостью с++ это работать не будет
Alexander
если ты получил указатель и сохранил его, то тут как бе к unique_ptr ниакких претензий
да кажется я разобрался, видать я чето-то не так делал, сейчас я стабилньо после move вижу nullptr по get, что более менее меня устраивает
Alexander
всем спс
Ivan
Парни, вы видели sleep sort?))
Ivan
Ахаха, боже, я угорел )
Berkus
работает же
Ivan
За линейное время xD
Berkus
оно не совсем линейное
Berkus
[200, 5000000, 1] будет сортироваться достаточно долго
Ivan
Ну я же пошутил
Anton
Парни, вы видели sleep sort?))
пользуюсь только bogosort