Здравствуйте, ·, Вы писали:
·>Здравствуйте, FDSC, Вы писали:
FDS>>·>Нет. Ты вопрос не понял. На каком основании компилятор будет решать, что "calculateHash" не должна писать в файл (и если кто-то случайно или намеренно там в файл пишет, то выдать ошибку компиляции), а "writeHash" может писать в файл? FDS>>Программист явно укажет функции, которые могут писать в файл. ·>А calculateHash берёт ссылку на функцию, скажем, для преобразования charset. Каким образом ты объяснишь, что этот преобразователь не должен использовать файловый API? А если вдруг таблицу charset придётся таки в некоторых случаях читать из файла?
Ну вот компилятор должен уметь это делать.
Читать в некоторых случаях прийтись не должно. Если должно, таблица будет передаваться из другого места.
FDS>>·>А если не все, а только 95% функций? А если 5%? Где границу-то ставить? FDS>>Допустим у нас проект на 20 000 строк кода. 1000 тысяча строк кода может делать всё что угодно. Согласись, есть разница, сколько проверять? ·>Разница слабо коррелирует с кол-вом строк в общем случае.
Что значит слабо коррелирует?
Проверять 100% строк или только 95?
FDS>>·>Это гарантированно быстрее, чем делать много раз при удалении каждого объекта в программе. FDS>>Гарантированно быстрее вообще не делать. FDS>>Обнуление памяти при завершении процесса — это слишком рискованная операция. Обнулять всё должно очень и очень быстро. ·>Так это зависит от программы. Если прога держит большое кол-во в памяти в виде развесистой структуры, то может получиться гораздо быстрее занулить всё подряд, чем аккуратно вызывать деструкторы-занулители в правильном порядке.
Неважно, как быстро вы сделаете это в плане времени зануления. Важно, как быстро вы сделаете это в плане времени существования объектов в памяти.
·>С т.з. секьюрити невелика разница. Хакеры могут например специально убивать прогу в точно выбранные моменты времени.
Могут. Но разница есть и, поверьте, она достаточно существенная.
FDS>>pwdAddress = VirtualAlloc(0, len, 0x1000 | 0x2000 | 0x00400000, 0x04); ·>И что эти цифири значат? Ты цитаты из док давай.
Да смысла нет. Просто она может блокировать страницу в физической памяти.