Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345

Что неправильно в этой задаче?

26.08.2013, 10:43. Показов 1093. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нашел на этом форуме одну интересную задачу. Нужно найти в ней ошибку. Автор вопроса так и не выложил правильный ответ

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
//---------------------------------------------------------------------------
#include <iostream>
using namespace std;
//---------------------------------------------------------------------------
class Test
{
  public:
    Test(int NewSize) { Size = NewSize; };
    ~Test() { };
    void SetSize(int NewSize) { Size = NewSize; };
    int GetSize() { return Size; };
  private:
    int Size;
};
//---------------------------------------------------------------------------
Test &TestObject()
{
  Test *pTestObject = new Test(5);
  int Size = pTestObject->GetSize();
  cout << Size;
  return *pTestObject;
}
//---------------------------------------------------------------------------
int main()
{
  Test &rTestObject = TestObject();
  int Size = rTestObject.GetSize();
  cout << Size << endl;
 
  Test *pTestObject = &rTestObject;
  delete pTestObject;
 
  system("pause");
  return 0;
}
//---------------------------------------------------------------------------
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.08.2013, 10:43
Ответы с готовыми решениями:

Что не так в этой простой задаче?
Ruby меня пинает уже пол дня, а я так и не могу понять в чем причина. Задача - найти локальный максимум в массиве чисел. Формула ниже....

Что от меня хотят в этой задаче по Pascal? Объясните
Дан текст. Найти количество каждого символа в этом тексте. Найти суммы их кодов. Результат вывести в 10й и 16й системе счисления. ...

В базе данных посчитать средний балл успеваемости группы. Что неправильно в задаче?
Помогите пожалуйста! Нужно в базе данных посчитать средний балл успеваемости группы..но она не работает ВОТ КОД: program...

14
194 / 174 / 30
Регистрация: 10.07.2012
Сообщений: 800
26.08.2013, 10:52
как минимум, поле Size не инициализировано.

Добавлено через 59 секунд
Цитата Сообщение от BigLow Посмотреть сообщение
Test *pTestObject = &rTestObject;
* delete pTestObject;
да и вот эта конструкция подозрительна весьма...
1
Каратель
Эксперт С++
6610 / 4029 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
26.08.2013, 10:56
Цитата Сообщение от salam Посмотреть сообщение
как минимум, поле Size не инициализировано.
Цитата Сообщение от BigLow Посмотреть сообщение
C++
1
Test(int NewSize) { Size = NewSize; };
Цитата Сообщение от salam Посмотреть сообщение
да и вот эта конструкция подозрительна весьма...
все тут впорядке
1
26.08.2013, 10:58

Не по теме:

В данном случае возвращать ссылку на объект, память под который выделена в куче - плохая идея... Потому что приходится шаманить со взятием адреса и удалением в неочевидном контексте.

1
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345
26.08.2013, 11:12  [ТС]
Ну все таки, что здесь не так? )
Программа компилируется без предупреждений и ошибок
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
26.08.2013, 11:14
Цитата Сообщение от BigLow Посмотреть сообщение
Нужно найти в ней ошибку.
И что за ошибка? Что вообще должна делать программа?
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
26.08.2013, 11:14
Цитата Сообщение от BigLow Посмотреть сообщение
Ну все таки, что здесь не так? )
А почему такая уверенность, что здесь что-то должно быть не так? Опишите задание - где конкретно искать, или приведите ссылку на пост, откуда вы его взяли.
1
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
26.08.2013, 11:16
Как минимум после delete у Вас останется "висячая ссылка" rTestObject
1
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345
26.08.2013, 12:11  [ТС]
вот ссылка https://www.cyberforum.ru/post870317.html

Добавлено через 55 минут
Цитата Сообщение от Croessmah Посмотреть сообщение
Как минимум после delete у Вас останется "висячая ссылка" rTestObject
с висячей ссылкой понятно.

А может ли случится так, что при следующем динамическом выделении, память будет выделена в том месте, где расположена эта ссылка?
0
Каратель
Эксперт С++
6610 / 4029 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
26.08.2013, 12:13
Цитата Сообщение от BigLow Посмотреть сообщение
А может ли случится так, что при следующем динамическом выделении, память будет выделена в том месте, где расположена эта ссылка?
может
1
2688 / 2260 / 244
Регистрация: 03.07.2012
Сообщений: 8,231
Записей в блоге: 1
26.08.2013, 12:17
Ссылка повиснет, size дважды выведется (т.е. 55 вместо 5), остальное не по глазам
1
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345
26.08.2013, 12:23  [ТС]
всем спасибо

вот так смотришь и вроде все хорошо в программе. и компилируется без предупреждений и ошибок и работает правильно, А оказывается вон что!
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
26.08.2013, 12:24
Цитата Сообщение от BigLow Посмотреть сообщение
Автор вопроса так и не выложил правильный ответ
Потому что на него ответили в теме
0
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345
26.08.2013, 12:26  [ТС]
Цитата Сообщение от Croessmah Посмотреть сообщение
Потому что на него ответили в теме
где ответили? я так и не нашел правильный ответ автора
дайте ссылку на ответ
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
26.08.2013, 12:30
https://www.cyberforum.ru/post870539.html
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.08.2013, 12:30
Помогаю со студенческими работами здесь

Блок-схема к этой задаче
program Project1; {$APPTYPE CONSOLE} uses SysUtils; var i, minLen, B,A, c : integer; s : string; begin readLn(s);

Нужен ли финализатор в этой задаче?
Здравствуйте. Нужна помощь по вопросу с деструктором. Я хочу создать класс, конструктор, которого открывает файловый поток (выгрузку в...

Алгоритм или решение по этой задаче
У Васи есть массив A длины N из неотрицательных целых чисел и число M. Необходимо выбрать ровно K элементов массива A, чтобы их...

двумерный массив и подпрограмма к этой задаче
Помогите пожалуйста! Решение нужно сегодня.. Нужно написать двумерный массив и подпрограмму к этой задаче,желательно еще с блок-схемой: ...

Можно ли объединить цикл в этой задаче
Эта недопрограмма высчитывает ближайший счастливый билет (сумма первых трех чисел равна сумме последних трех) на числовой оси. Я...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru