По мне так это логично. Qt — фрэймворк для создания интерфейсов, а не для работы с реалтаймовой графикой. Для игр есть отдельные движки, специально для этого заточенные. На них, кстати, обычно не очень удобно создавать интерфейсы, что, впрочем, никого не удивляет )
Кроме того, ничего плохого в указателях самих по себе нету. Плохи владеющие ресурсами сырые указатели. Но тут дело не в указателях — это лишь частный случай владения ресурсом без RAII. Любой сырой хэндл — такое же зло. И, кстати, сборщик мусора, на самом деле, решает только частную проблему, владения ресурсом, когда ресурс — именно память, тогда как RAII — решает общую проблему. Но так как сборщик мусора чаще всего исключает наличие деструктора, то RAII становится несовместим со сборщиком мусора. Поэтому, пожалуйста, не надо в плюсы тащить свои «гениальные» идеи.
Это было в основном про художественную часть повествования.
Вроде же стандартные для рассуждений о информационной безопасности Бобы-Алисы (ну и нестандартный Буратино, конечно).
В линуксах я не слышал чтобы употребляли термины ring для описания уровня выполнения кода
А причём здесь ОС? Речь, вроде, идёт о процессоре.
что мешает параноику-миллиардеру Бобу использовать для финансовых операций отдельный ноутбук с OpenBSD, хранимый в сейфе банка и зашифрованный паролями?
А почему именно OpenBSD? Она по определению не взламываема?
почему у Боба оказался бракованный процессор?
А почему вы решили, что процессор бракованный? Буратино, вроде как, в документации про эту фичу прочитал.
есть ещё сотни способов получить тоже самое оффлайн, дедовскими методами — это к узкому взгляду на ИБ как на процесс запрещения выполнения чего то там.
Так посыл статьи, на мой взгляд, в том и заключается, что какую бы ОС вы не выбрали, это само по себе ничего не гарантирует вам в плане безопасности.
Про траву писать много ума не надо. По-моему, автор вполне внятно и аргументированно изложил свою позицию, в отличие от вас. Что-нибудь конструктивно ответить вы можете?
Вы не правы. Размер ссылки и размер объекта, содержащего ссылку это не одно и то же. Доказательство.
В общем-то, именно поэтому я и положил ссылку в класс, а не вывел её размер напрямую. Я выше написал, что в спецификации не говорится о том, как ссылка должна быть реализована, но чаще всего это указатель. Я не понимаю в чём конкретно вы со мной не согласны и как это противоречит тому, что вы написали или тому, о чём говорит спецификация.
Про спецификацию тоже не вижу ничего ( как минимум до того момента, как я на нее сослался)
Гм.
Хотя стандартом это и не требуется, но по сути, это единственный возможный способ её имплементации в большинстве случаев.
Давайте по пунктам, в чём вы со мной не согласны? В том, что ссылка это чаще всего адрес? Если хотите, я могу ассемблерный код привести вам для этого примера и вы увидите, что там адрес. И мне бы было очень интересно услышать вашу версию того, как ссылку в классе или в аргументе функции можно реализовать по другому.
Стандарт не говорит о том, как она реализована? Прекрасно, я с этим не спорил, более того, я первый указал на это (см. цитату выше), но это не отменяет того, что в большинстве случаев адрес — единственный возможный способ её реализации.
Я лично считаю некорректным высказывание «Ссылка это или ничего, или черный ящик.». Потому что если ссылка чёрный ящик всегда, если мы говорим о стандарте, нету никакого «либо ничего», потому как стандарт этого тоже не требует.
На самом деле, ссылка, конечно же, чаще всего занимает место в памяти и является всё тем же адресом. Хотя стандартом это и не требуется, но по сути, это единственный возможный способ её имплементации в большинстве случаев.
Важным отличие ссылки от указателя является то, что сам адрес мы изменить никак не можем после инициализации. По сути это константный, неизменяемый адрес.
Насчёт случая, который вы указали — так бывает в реальном коде редко. Подобные оптимизации компилятор выполняет и для других константных данных, не дублируя их. Пример.
А что странного в том, что адрес тоже имеет размер и тоже располагается в памяти? Это не отменяет того, что он всего лишь указывает на какое-то другое место в памяти. Собственно, если распечатать указатель вы этот адрес и увидите. А абстракцией я его назвал из-за того, что указатели ведут себя не совсем так, как сырой адрес в памяти, имея ввиду арифметические операции с указателями.
Видимо, у нас просто проблема с терминалогией ). Поясню, слово «абстракция» я здесь употребляю не в смысле нечто неосязаемое, а в смысле объект, обладающий функциональностью отличной от объекта, на основе которого он выполнен. В данном случае, указатель обладает свойствами, отличными от просто адреса в памяти. С точки зрения данных — это именно адрес, но операции, определённые для указателя и адреса немного различаются. Надеюсь, объяснение получилось не слишком путаным.
Хм, я всегда воспринимал указатель, как просто тонкую абстракцию над адресом в памяти. По-моему, если их рассматривать так, то вообще никаких сложностей нет.
Я пользуюсь им для хранения паролей на тех сайтах, на которых мне и правда плевать на безопасность. Кто-нибудь сопрёт мой пароль на богом забытом форуме, где я ни разу ничего не постил? На здоровье. И таких сайтов большинство, я даже пароли на них не помню.
А почему использование мастера паролей стало самонеуважением именно в 2015-м? Раньше было можно, а теперь нельзя? Какие вы предлагаете альтернативы?
Да всё человечество наживается на чужих успехах. Или вы пишете программное обеспечение не для ОС, которые были созданы и стали популярны без вашего участи, на языках программирования, которые были созданы и стали популярными без вашего участия и для компьютеров с архитектурой, которая… ну вы поняли я думаю.
Это называется развитие. И есть компании, которые это развитие искусственно тормозят, из-за страха проиграть конкуренцию на рынке.
Про булочки писал не я, но это не важно. Я вижу, что спор бессмысленнен, вы считаете, что тот, кто что-то создал имеет право пользоваться этим как угодно, чем бы это «что-то» не являлось. Я так не считаю, и друг друга мы вряд ли переубедим. В любом случае, именно для таких случаев и существуют законы, а значит Яндекс поступил правильно и пусть юристы разбираются, кто прав а кто нет.
А причём здесь ОС? Речь, вроде, идёт о процессоре.
А почему именно OpenBSD? Она по определению не взламываема?
А почему вы решили, что процессор бракованный? Буратино, вроде как, в документации про эту фичу прочитал.
Так посыл статьи, на мой взгляд, в том и заключается, что какую бы ОС вы не выбрали, это само по себе ничего не гарантирует вам в плане безопасности.
В общем-то, именно поэтому я и положил ссылку в класс, а не вывел её размер напрямую. Я выше написал, что в спецификации не говорится о том, как ссылка должна быть реализована, но чаще всего это указатель. Я не понимаю в чём конкретно вы со мной не согласны и как это противоречит тому, что вы написали или тому, о чём говорит спецификация.
Гм.
Давайте по пунктам, в чём вы со мной не согласны? В том, что ссылка это чаще всего адрес? Если хотите, я могу ассемблерный код привести вам для этого примера и вы увидите, что там адрес. И мне бы было очень интересно услышать вашу версию того, как ссылку в классе или в аргументе функции можно реализовать по другому.
Стандарт не говорит о том, как она реализована? Прекрасно, я с этим не спорил, более того, я первый указал на это (см. цитату выше), но это не отменяет того, что в большинстве случаев адрес — единственный возможный способ её реализации.
Я лично считаю некорректным высказывание «Ссылка это или ничего, или черный ящик.». Потому что если ссылка чёрный ящик всегда, если мы говорим о стандарте, нету никакого «либо ничего», потому как стандарт этого тоже не требует.
Важным отличие ссылки от указателя является то, что сам адрес мы изменить никак не можем после инициализации. По сути это константный, неизменяемый адрес.
Насчёт случая, который вы указали — так бывает в реальном коде редко. Подобные оптимизации компилятор выполняет и для других константных данных, не дублируя их. Пример.
Видимо, у нас просто проблема с терминалогией ). Поясню, слово «абстракция» я здесь употребляю не в смысле нечто неосязаемое, а в смысле объект, обладающий функциональностью отличной от объекта, на основе которого он выполнен. В данном случае, указатель обладает свойствами, отличными от просто адреса в памяти. С точки зрения данных — это именно адрес, но операции, определённые для указателя и адреса немного различаются. Надеюсь, объяснение получилось не слишком путаным.
А почему использование мастера паролей стало самонеуважением именно в 2015-м? Раньше было можно, а теперь нельзя? Какие вы предлагаете альтернативы?
Это называется развитие. И есть компании, которые это развитие искусственно тормозят, из-за страха проиграть конкуренцию на рынке.