| 15.07.2010, 05:53 | |
|
Ответы с готовыми решениями:
1272
Элементарные программы, для лучшего понимания языка...
Литература для лучшего понимания сути программирования |
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|||||||||||
| 23.07.2010, 01:20 | |||||||||||
|
Lavroff, neske, хе-хе... а ведь в задачке rangerx, тоже всё банально просто.
Нужно просто рассмотреть эту строчку:
А вот "http:" рассматривается как обычная метка. ![]() Для лучшего понимания простенький пример:
5
|
|||||||||||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 23.07.2010, 01:22 [ТС] | |
|
MikeSoft, Ух как. Про метки не знал. Спасибо. Может задачку подкините заодно какую-нибудь?)
0
|
|
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
|||||||
| 23.07.2010, 01:33 | |||||||
0
|
|||||||
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|||||||
| 23.07.2010, 01:46 | |||||||
![]()
Попробуйте посмотреть на задачку и сказать, что в ней неправильно. Компилятор, думаю, вам не поможет...
0
|
|||||||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
| 23.07.2010, 02:03 [ТС] | ||||||
|
Не знаю... Но вот что нашел...
Если совсем не то - скажите, но ответ не говорите... Еще тогда подумать попробую...
0
|
||||||
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
||
| 23.07.2010, 02:22 | ||
|
Но ответ неверный.
0
|
||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 23.07.2010, 02:29 [ТС] | |
|
Нет... Не могу найти ошибку... Синтаксически вроде все правильно... В функции создаем указатель на объект класса Test, выделяем под него память операцией new, используя конструктор с параметрами типа int Test(5). Получаем размер - и печатаем его...
В мейне создаем ссылку на объект класса Test и вызываем для него функцию TestObject... В итоге получаем в поле Size объекта rTestObject значение 5...Выводим значение на экран... Чистим память... Можно ответ? Если хотите, чтобы кто-нибудь еще порешал ответ можно в лс...
0
|
|
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
||
| 23.07.2010, 02:35 | ||
|
Если я вам сейчас скажу ответ, вы его забудете через N дней. А вот если сами попробуете разобраться - то запомните на более длинный промежуток, если не навсегда. Я попробую чуть натолкнуть на мысль. Прокомментируйте ещё раз действия, которые выполняются в функции main. Особенно меня интересуют строки 26, 30, 31.
0
|
||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 23.07.2010, 02:47 [ТС] | |
|
MikeSoft, Мы объявляем ссылку на объект класса Test инициализируя ее тем, что возвращает ссылка на функцию TestObject, которая возвращает указатель на объект класса Test...
Затем мы присваиваем указателю на объект Test значение ссылки на другой объект Test. Затем удаляем указатель на Test, точнее очищаем память... Память так же очищается и в другом объекте. А это нормально что у указателя возвращаемого функцией и ссылки которую мы создали в мейн один и тот же адрес?
0
|
|
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|||
| 23.07.2010, 02:53 | |||
|
Все действия выполняются только на одном объекте. Выполняя присвоение указателю вы даже не вызываете конструктор копирования.
0
|
|||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
| 23.07.2010, 03:18 [ТС] | ||||||
|
MikeSoft, нет... видать я плохо занимался и занимаюсь. никаких мыслей. Мы ведь не делаем ничего против стандарта... Или делаем?
Добавлено через 8 минут А не логичнее ли так?
0
|
||||||
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|||
| 23.07.2010, 03:34 | |||
|
0
|
|||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 23.07.2010, 03:42 [ТС] | |
|
MikeSoft, Пас. Смотреть сегодня уже не могу. ВС пищит сильно, если что не так. А на дворе ночь. Спать мешаю.
В чем все же ошибка?
0
|
|
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|
| 23.07.2010, 03:51 | |
|
Пусть задача пока что останется для обсуждения.
Если нужно будет, ответ я озвучу здесь. А пока что, он у вас в ЛС.
1
|
|
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 23.07.2010, 04:05 [ТС] | |
|
MikeSoft, Прекрасная задача, спасибо! Еще дадите что-нибудь?)
0
|
|
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
||||||
| 23.07.2010, 04:23 | ||||||
|
Lavroff, а как на счёт почти идентичной задачи?
Опять тот же класс, те же ссылки... Но функция создаёт обьект класса:
0
|
||||||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
| 23.07.2010, 04:39 [ТС] | ||||||
Хотя даже не совсем так... Возвращает то он верно, но после вызова функции GetSize в size попадает то-ли мусор, то-ли адрес объекта в памяти. Скорее второе.
0
|
||||||
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|
| 23.07.2010, 04:43 | |
|
Lavroff,
всё там в рамках цензуры. Компиляторы фирмы Microsoft выполнят эту программу с одним предупреждением (чем оно вызвано?). А вот компилятор от Borland или Embarcadero откажутся выполнять. В чём же загвоздка?
0
|
|
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 23.07.2010, 04:49 [ТС] | |
|
MikeSoft, В том что из функции возвращается адрес локальной или временной переменной.
Дык нехорошо адрес то возвращать. Как-то неправильно что-ли) Значение Size после вызова функции из мейн: 1244788. А в ссылке содержится адрес временного элемента... не?
0
|
|
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|
| 23.07.2010, 04:57 | |
|
Lavroff, в теле ф-ции TestObject() объявляется локальный объект и инициализируется Size. Затем этот объект возвращается по ссылке.
По возвращению функции TestObject() локальный объект pTestObject будет разрушен. Возвращаемая ссылка же останется псевдонимом для несуществующего объекта. Вот она, ошибка.
2
|
|
| 23.07.2010, 04:57 | |
|
Набор задачь для тренировки и улучшения понимания программирования Проверить на правильность и закомментировать весь код для лучшего понимания Нужны задачи для тренировки
Нужны задачи для тренировки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|