|
2383 / 1667 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||||||||
| 03.07.2011, 11:20 | ||||||||
|
Однако касательно вызова
0
|
||||||||
| 03.07.2011, 11:20 | |
|
Ответы с готовыми решениями:
200
Что означает ptr в строке byte ptr[si],al Ошибка на стадии выполнения ptr = ptr; bad ptr |
|
Модератор
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,980
|
|||||||||
| 03.07.2011, 11:57 | |||||||||
Добавлено через 9 минут
0
|
|||||||||
|
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
||
| 03.07.2011, 11:59 | ||
неважно, как называется переменная главное, что эта строка ясно сообщает, какой тип у ptr, в то время как !ptr сохраняет загадку
0
|
||
|
Модератор
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,980
|
||
| 03.07.2011, 12:06 | ||
|
accept, я же не спорю, что == NULL понятнее, я к тому что "понятный" код ещё не гарантия того, что он правильный.
0
|
||
|
2383 / 1667 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||||||||||||
| 03.07.2011, 12:10 | ||||||||||||
![]() Только в соответствии с процитированным пунктом стандарта код
0
|
||||||||||||
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|||||||
| 03.07.2011, 12:15 | |||||||
|
все равно способ подозрительный, всегда использовал нечто вроде
в листе например все итераторы как правило после удаления становятся невалидными
0
|
|||||||
|
2383 / 1667 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||
| 03.07.2011, 12:18 | ||
|
0
|
||
|
Модератор
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,980
|
||
| 03.07.2011, 12:28 | ||
|
alex_x_x, да и я почти то же самое говорил страницы три назад
![]()
0
|
||
|
2383 / 1667 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
|
| 03.07.2011, 12:36 | |
|
easybudda, да они обе точно работающие, и в обоих случаях возникает желание "пооптимизировать", вынеся инкремент из условия.
![]() С тем что удалять лучше вообще не так я не только не спорю, но и сам так удалять не стал бы (если надо просто удалить элементы с заданным значением). Не стал бы так делать, уверен, и автор книги. Способ удаления не является рекомендованным, как тут говорилось, он просто корректный и обращает внимание на то, как не надо действовать, если потребность удаления в процессе итерации. А именно, не надо инкрементировать итератор после удаления. В книге ведь не только этот фрагмент, там ещё и слова написаны, и пример некорректного кода есть. А выдранный из контекста код действительно выглядит подозрительным.
0
|
|
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|||||||||||
| 03.07.2011, 12:37 | |||||||||||
|
grizlik78, попробовал - и правда работает
получается
все это изза того, что природа итераторов библиотеки неочевидна, видимо они жестко привязаны к контейнерам
0
|
|||||||||||
|
2383 / 1667 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||||
| 03.07.2011, 12:50 | ||||
Добавлено через 9 минут STL вообще опасная штука, если пользоваться ей не зная как там всё работает.
0
|
||||
|
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
||
| 03.07.2011, 14:14 | ||
чем меньше размышлений, тем больше свободного места в "оперативной памяти" под что-нибудь ещё
0
|
||
|
Заблокирован
|
|
| 03.07.2011, 14:17 [ТС] | |
|
0
|
|
| 03.07.2011, 14:27 | |
|
0
|
|
|
Заблокирован
|
||||||
| 03.07.2011, 14:52 [ТС] | ||||||
|
любопытную ссылочку на Хаббаре нашёл, но постить её здесь боюсь, ибо могут счесть за рекламу.
Суть в том, что автор тамошней статьи проанализировал несколько различных известных проектов (например Миранда) на ошибки. Результат анализа опубликовал, и привел рекомендации, как писать код так, что бы подобных ошибок не допускать. И вот имейте ввиду - это реальные проекты, которые писали реальные сеньоры, а не какие нибудь джуниоры. И как это часто бывает, в комментариях к статье, автора начали критиковать. Потом и вовсе - пришёл один из разработчиков Миранды (он в первой части статьи в основном запостил наиболее зверские косяки Миранды) И разгорелась дисскусия, по одной из ошибок. Сеньор из Миранды утверждал, что это код правильный, и ошибки нету. Начались разборки, тесты, доказательства. Оказалось что на разных компиляторах код ведёт себя по разному...
memset(ImgIndex,0,sizeof(ImgIndex)); А вообще, код Миранды ужассен в плане читабельности. Так что не удивительно.... easybudda, вторая часть его статьи начинается так: 1. Не используйте тернарную операцию '?:' в составных выражениях Помните свою 3х этажную рекурсию?)) Если меня за это не поругают, могу запостить ссылочку.
0
|
||||||
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
||||||
| 03.07.2011, 15:33 | ||||||
|
ImgIndex и &ImgIndex дают одинаковый адрес
sizeof(ImgIndex) и sizeof(&ImgIndex) дают естесственно разный размер он просто ошибся сейчас в коде миранды просто
0
|
||||||
|
Модератор
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,980
|
||||||||
| 03.07.2011, 15:41 | ||||||||
|
На сколько понял, создали массив из 64 указателей, так и обнуляем его не мудрствуя лукаво...
![]() Опоздал немного...
0
|
||||||||
|
|
|||
| 04.07.2011, 11:17 | |||
|
0
|
|||
|
Модератор
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,980
|
|||
| 04.07.2011, 12:41 | |||
|
Но есть совсем другой стиль программирования. Нет, не ставящий себе целью сделать программу похожей на шифровку шпионскую. Вот это я до Вас всё никак донести не могу. Программа может быть не только "простой и ясной для понимания", она же может предельно чётко (без рюшичек) и разумно компактно излагать смысл задуманного, вот правда, чтоб его понять прийдётся поднапрячься. За то с осмыслением задуманного, оцениваешь и на сколько красиво человек свою мысль изложил. Вот тогда это интересная программа. А Вы мне всё - "нам думать некогда, мы детальки точим". Да точите себе на здоровье, я ж не против...
0
|
|||
| 04.07.2011, 12:41 | |
|
Что такое qword ptr gs Что делает операция PTR Что означает конструкция *(*ptr + j) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|