if(arr == nullptr){
delete[] arr;
"Недопустимая попытка перехода на метку пакетного файла извне этого файла."
for /f
, используя модификатор для переменной цикла %%~za
. Но в вашем случае проще это сделать через процедуру - в нумерованных параметрах процедуры то же работают модификаторы.for /f "tokens=* delims=" %%a in ('dir /b C:\Test\*') do (call:del5mb "c:\Test\%%~a")
goto:eof
:del5mb
if %~z1 lss 5242880 (del "%~1")
exit /b 0
del "c:\test\%%~a"
А как совместить дробную с целой, что бы было правильно отсортировано, допустим если введётся 3 пятёрки в разный момент и одна из них будет целым числом?
мучения с установкой, ни черта не работает, откомпилировать, хрен его знает как
Когда это происходит в пределах одной функции, то компилятор справится с этими зависимостями и оптимизирует там где можно и не оптимизирует там где нельзя.
Но компилятор не может гарантировать, что параметры функции не ссылаются на одну область памяти, поэтому генерирует код без оптимизаций. Указывая restrict вы гарантируете компилятору от себя, что пересечений по памяти не будет и компиялтор начинает резвится как может.
restrict относится к памяти на которую ссылается указатель, а не к самому указателю.
Так что в моем сообщении выше "закэшировать this в регистре" - не правильно. Компилятор может кешировать значение this->buffer из вашего примера, в этом случае убирается лишняя команда чтения buffer, о которой вы писали - будет использована ранее сохраненная в регистре информация.
Тёмная материя :)