Current time: 24.03.2024, 05:25 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
С++, общая тема
Author Message
NIKr0m@nceR Offline

Posts: 203
Post: #316

запускать через F8, если F5, то это дебаг Sm


всё на благо народа
13.05.2012 21:48
Find all posts by this user Quote this message in a reply
gamecreator Offline

Posts: 7107
Post: #317

(11.05.2012 14:44)GrayFace Wrote:  36 Потеря корректности? Проблемы с освобождением?
там ты переприсваиваешь указатели, можно запутаться. а еще при таких изменениях переменных иногда лезут ошибки при освобождении памяти, я уже когда-то писал.
(11.05.2012 14:44)GrayFace Wrote:  Почему же? Спокойно можно рисовать в таймере и в OnPaint.
можно. но зачем? потеря двойной буферизации (а значит и жутко медленная отрисовка), стирание при следующем вызове отрисовки, еще что-нибудь вылезет. уже лучше вызвать перерисовку формы через invalidate.
(11.05.2012 14:44)GrayFace Wrote:  Еще можно вызывать Repaint - он отрисовывает сразу, а не когда дойдет до сообщения.
не знаю что это, описание какое-то мутное.
(11.05.2012 18:14)NIKr0m@nceR Wrote:  чем сишные функции выделения памяти лучше и почему их нельзя юзать в плюсах я так и не узнаю.
емнип, ты и не спрашивал.
конечно же, их можно (и нужно) использовать в плюсах. а лучше они наличием realloc
(12.05.2012 20:42)packa Wrote:  Поделитесь ссылкой на нормальный компилятор под Си.
msvc. емнип, он поддерживает С. но размер большой, конечно.
(12.05.2012 22:53)packa Wrote:  красным то что бы хотел убрать
не пойму чем оно тебе мешает
(13.05.2012 18:49)NIKr0m@nceR Wrote:  а еще, мне не нравятся эти сини с сяутами Bad наверное потому. что я кучу времени писал на с и привык к принтфосканфам.
а насчёт ошибки - мне бы побольше глянуть а то так не понятно нифига Bad
так стандартный ввод-вывод намного гибче Sm мне он тоже нравится больше потокового.


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
15.05.2012 02:53
Find all posts by this user Quote this message in a reply
NIKr0m@nceR Offline

Posts: 203
Post: #318

бтв, а как работает реаллок? в том смысле что действительно ли это сильно эффективнее чем тупо создать новый кусок и удалить старый?
про так и не узнаю это я просто неудачно выразился и не заметил, извиняюсь

у меня тут вопрос возник: какой механизм работы исключений типа деления на 0? просто интересно а гуглить влом, если кто знает - просветите.


всё на благо народа
15.05.2012 23:22
Find all posts by this user Quote this message in a reply
etoprostoya Offline

Posts: 1809
Post: #319

>>бтв, а как работает реаллок? в том смысле что действительно ли это сильно эффективнее чем тупо создать новый кусок и удалить старый?
Да, вроде эффективнее, хотя я не тестировал на скорость. В первом случае всё происходит средствами ОСи, а во втором ты своими ручками, то есть кодом. Зря что ли создавались АПИшные функции типа HeapRealloc()?
16.05.2012 00:09
Find all posts by this user Quote this message in a reply
gamecreator Offline

Posts: 7107
Post: #320

(15.05.2012 23:22)NIKr0m@nceR Wrote:  бтв, а как работает реаллок? в том смысле что действительно ли это сильно эффективнее чем тупо создать новый кусок и удалить старый?
вроде бы должно быть эффективнее:
msdn Wrote:realloc returns a void pointer to the reallocated (and possibly moved) memory block.
но в то же время:
msdn Wrote:realloc calls malloc in order to use the C++ _set_new_mode function to set the new handler mode.
(15.05.2012 23:22)NIKr0m@nceR Wrote:  какой механизм работы исключений типа деления на 0?
всмысле? как и другие исключения. вылазит ошибка деления на ноль - выбрасывается исключение


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
16.05.2012 02:29
Find all posts by this user Quote this message in a reply
NIKr0m@nceR Offline

Posts: 203
Post: #321

а где оно выбрасывается? на каком уровне? просто в моей мингв нет виндовской обработки исключений и её обработка реализована страшненьким макросом с асмовставками, вот я и заинтересовался.


всё на благо народа
16.05.2012 06:29
Find all posts by this user Quote this message in a reply
gamecreator Offline

Posts: 7107
Post: #322

так деление на ноль это прерывание. в обработчике прерывания и выбрасывается.


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
16.05.2012 15:05
Find all posts by this user Quote this message in a reply
NIKr0m@nceR Offline

Posts: 203
Post: #323

а, протупил. точно. спс


всё на благо народа
16.05.2012 23:42
Find all posts by this user Quote this message in a reply
Efrit Offline
Administrators

Posts: 6183
Post: #324

Эх, ну какой дурак придумал, что в сях неинициализированные указатели равны мусору, а не NULL?
Полдня сегодня из-за этого потратил - в одной из if-веток конструктора забыл проинициализировать поле-указатель...


Welcome to the soldier side,
Where there is no one here but me.
People all grow up to die,
There is no one here but me...
17.05.2012 14:32
Find all posts by this user Quote this message in a reply
NIKr0m@nceR Offline

Posts: 203
Post: #325

ага, бывает. на всякий случай стараюсь сразу проинициализировать всё.


всё на благо народа
17.05.2012 15:14
Find all posts by this user Quote this message in a reply
AVS Offline

Posts: 16
Post: #326

(17.05.2012 14:32)Efrit Wrote:  Эх, ну какой дурак придумал, что в сях неинициализированные указатели равны мусору, а не NULL?
Полдня сегодня из-за этого потратил - в одной из if-веток конструктора забыл проинициализировать поле-указатель...

Ну с таким же успехом можно отгрести багов и от любой другой переменной. Тут уж либо обнулять все (как в паскале при создании объекта в куче) либо ничего не трогать. В сях скрость работы на одном из первых мест - ничего "лишнего" компилятор пытается не вставлять.
17.05.2012 15:26
Find all posts by this user Quote this message in a reply
Efrit Offline
Administrators

Posts: 6183
Post: #327

AVS Wrote:Ну с таким же успехом можно отгрести багов и от любой другой переменной.
Не совсем так. Ведь "другие переменные" нельзя разыменовывать - только указатели...

AVS Wrote:В сях скрость работы на одном из первых мест - ничего "лишнего" компилятор пытается не вставлять.
Сделали бы опцию в компиляторе, и всего делов... Может, это есть уже где?


Welcome to the soldier side,
Where there is no one here but me.
People all grow up to die,
There is no one here but me...
17.05.2012 16:02
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16449
Post: #328

cyclone?


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
17.05.2012 16:30
Find all posts by this user Quote this message in a reply
AVS Offline

Posts: 16
Post: #329

(17.05.2012 16:02)Efrit Wrote:  
AVS Wrote:Ну с таким же успехом можно отгрести багов и от любой другой переменной.
Не совсем так. Ведь "другие переменные" нельзя разыменовывать - только указатели...

И чо? Да с другими переменными не будет сразу AV (или что еще хуже порча чего нить полезного) , но например какой нить case пойдет не по той ветке - тоже мало приятного; да мало ли, что еще может быть.
17.05.2012 16:36
Find all posts by this user Quote this message in a reply
gamecreator Offline

Posts: 7107
Post: #330

указатель - тоже переменная. и имеет полное право быть равным мусору.


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
20.05.2012 01:46
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group