Я совершенно не знаком с бустовской библиотекой. Про chrono написал потому что ее использует Thread support library. Если нужно не только измерение интервалов, то да, лучше выбрать что-то другое.
Эта статья, конечно, баловство, примерно как запустить Doom на микроволновке :) Но это потому что очень интересно сделать что-то нестандартное, то что мало кто делал. Но программирование как хобби есть у многих профессиональных программистов, ведь таким образом можно заниматься очень увлекательными вещами, которые на работе скорее всего делать не придется. Кто-то пишет компилятор с нуля вместо готовых анализаторов, другой ОС просто так, или свою реализацию сортировки вместо библиотечной и т. д.
Я программист C++.
и зрение, которое можно скорректировать до 20/20 линзами.
Я не знал, что за 20/20
В англоязычных странах остроту зрения, как правило, определяют по таблице Снеллена и обычно обозначают простой дробью: в числителе стоит расстояние, с которого проводят исследование (обычно 20 футов ~ 6 метров), а в знаменателе — расстояние, с которого эмметропический глаз видит знак, правильно прочитанный исследуемым (20/20 — эквивалентно 1,0; 20/200 ~ 0,1).
Эмметропия — нормальная рефракция глаза, способность оптической системы глаза чётко различать удалённые предметы.
> In Windows Server 2003 SP1, user-mode access to the \Device\PhysicalMemory object is not permitted. All forms of access (read, write) are refused when the \Device\PhysicalMemory object is accessed from a user-mode application. Access to the \Device\PhysicalMemory object is refused regardless of the user context (Administrators, Users, Local System, etc.) the application is running in.
В WinHex работало потому что XP:
> Access to physical RAM under Windows XP (32-bit) only
На всякий случай, чтобы не быть голословным. В main:
main:
lea rax, [rbp-17] //выделили место на стеке
mov rdi, rax //передаем адрес через rdi
call foo()
lea rax, [rbp-17]
mov rdi, rax
call T::~T() //вызов деструктора для того же адреса
теперь смотрим foo:
foo:
mov QWORD PTR [rbp-8], rdi //копирование туда-сюда
mov rax, QWORD PTR [rbp-8]
mov rdi, rax
call T::T() //вызов конструктора для адреса
//в rdi в стеке main
Иногда действительно хочется отложенную инициализацию.
Но это не вариант, непонятно на что ссылаться. Мне неизвестно как создать объект с выделением памяти и вызовом деструктора, но без вызова конструктора.
Ручками не обязательно. У вас неверная запись. Нужно использовать один из вариантов (строчный или блочный): $inline$\hat {K}$inline$
$$display$$\hat {K}$$display$$
Когда я перешел на новую работу, мне пришлось переучиваться и помещать скобку на новой отдельной строке. И теперь считаю, что так лучше.
1. Открывающая и закрывающая скобки расположены на одном уровне. Это довольно естественно. В GUI, перейдя курсором на закрывающую скобку, легче найти подсвеченную открывающую и глазами визуально выделить блок.
2. Кода влезает меньше, но он не такой плотный, опять же легче ориентироваться в нем. И меньшее количество умещенного кода на экране стимулирует разбивать большие функции.
На 50-й секунде Мимас занимает около 1/50 части экрана по горизонтали. Если принять угол обзора по горизонтали = 90°, то угловые размеры спутника = (PI/2)/50 = 0.0314 рад. Для такого маленького угла это почти тангенс, т. е. Диаметр_мимаса/расстояние = 400км / расстояние = 0.0314, значит расстояние = 12700 км. До него мы долетели примерно за 9 сек, значит скорость = 1400 км/с. Конечно, это грубая прикидка.
22. Можно подождать, когда часы покажут точно ЧЧ: ММ: СС с дискретизацией один раз в секунду.
Мне кажется, причина в том, что выдержать точный шаг дискретизации невозможно. Т.е, если нам нужно засечь время 00:00:01, то велика вероятность перепрыгнуть: 00:00:00.999, а следующий отсчет 00:00:02.000
Тему, конечно, поддерживаю. Да, было бы неплохо скомпоновать материал по этой теме, да хотя бы из кучи полученных комментариев.
Я совершенно не знаком с бустовской библиотекой. Про chrono написал потому что ее использует Thread support library. Если нужно не только измерение интервалов, то да, лучше выбрать что-то другое.
Может вам на Тостер? Это все-таки не статья.
А почему вас не устраивает так:
Эта статья, конечно, баловство, примерно как запустить Doom на микроволновке :) Но это потому что очень интересно сделать что-то нестандартное, то что мало кто делал. Но программирование как хобби есть у многих профессиональных программистов, ведь таким образом можно заниматься очень увлекательными вещами, которые на работе скорее всего делать не придется. Кто-то пишет компилятор с нуля вместо готовых анализаторов, другой ОС просто так, или свою реализацию сортировки вместо библиотечной и т. д.
Я программист C++.
Я не знал, что за 20/20
Обновил ;)
Спасибо, обновил!
Поддерживает. Только нужно включить "lock pages in memory" в групповых политиках.
В WinHex работало потому что XP:
> Access to physical RAM under Windows XP (32-bit) only
WinHEX, значит, устанавливает свой драйвер?
Хороший комментарий. Вот, что интересно: если вы разбирались с этим — заданы ли четкие требования к работе copy elision? Например, в таком случае:
На всякий случай, чтобы не быть голословным. В main:
теперь смотрим foo:
Иногда действительно хочется отложенную инициализацию.
На секунду появилась мысль написать так:
Но это не вариант, непонятно на что ссылаться. Мне неизвестно как создать объект с выделением памяти и вызовом деструктора, но без вызова конструктора.
$inline$\hat {K}$inline$
$$display$$\hat {K}$$display$$
1. Открывающая и закрывающая скобки расположены на одном уровне. Это довольно естественно. В GUI, перейдя курсором на закрывающую скобку, легче найти подсвеченную открывающую и глазами визуально выделить блок.
2. Кода влезает меньше, но он не такой плотный, опять же легче ориентироваться в нем. И меньшее количество умещенного кода на экране стимулирует разбивать большие функции.