|
12 / 11 / 0
Регистрация: 29.11.2009
Сообщений: 186
|
||||||
Нужно сделать переменную статической25.03.2010, 19:16. Показов 850. Ответов 4
Метки нет (Все метки)
Доброго времени суток всем. У меня вот какая проблема: создан класс множество. Перегружен оператор + чтоб добавлять элементы. Но вот при добавлении элемента оно добавляет элемент не в конец множества,а вместо последнего добавленного, т е получается множество является не статической переменной,а обновляется каждый раз при добавлении. со счётчиком ,который есть для того чтоб указывать в какое место вставлять новый элемент всё нормально - он растёт.
Помогите разобраться в чем сдесь дело. Заранее благодарю. Вот текст проги(это из Шилдта):
0
|
||||||
| 25.03.2010, 19:16 | |
|
Ответы с готовыми решениями:
4
Объявление статической переменной и статической функции в классе Нужно сделать ссылку на переменную Нужно сделать переменную с текстом и потом её изменить |
|
56 / 56 / 6
Регистрация: 23.10.2009
Сообщений: 250
|
|
| 26.03.2010, 03:18 | |
|
итак код отвратителен!!! просто ужасен!
поехали: рассмотрим Set Set::operator +(char ch) первой строкой мы видим Set newset; что эквивалентно Set newset(); или конструктору по умолчанию Set(){len=0;} следовательно вопрос чему равен newset.len ? ответ
правильно 0
опустившись ниже видим строку newset.members[newset.len]=ch; вопрос в какую позицию мы пишем символ ответ
в первую
newset.len=newset.len+g; что даёт эта строка? ответ
она записывает новое значение длинны в newset.len и оно становится равно глобальной переменной и длинне которой якобы должно быть равно множество
g++; эта строка инкримирует глобальную переменную делай выводы.. Выводы
1. программа не работает потому что каждый раз происходит запись в 1-ю позицию. 2. программа не может правильно работать потому что не происходит копирования из this в newset. 3. программа выводит мусор потому что существует только первый элемент а длинна увеличивается 4. код ужасен потому что не соблюдены правила ООП (сокрытие данных), используются глобальные переменные (это очень плохо), и вообще он не аккуратен и не несет смысловой нагрузки. совет: читай Роберт Седжвик фундаментальные алгоритмы 1-4 часть или Структуры данных в C++. Уильям Форд, Уильям Топп
1
|
|
|
ниначмуроФ
851 / 535 / 110
Регистрация: 12.10.2009
Сообщений: 1,913
|
||||||
| 26.03.2010, 09:08 | ||||||
|
статическая переменная:
0
|
||||||
|
12 / 11 / 0
Регистрация: 29.11.2009
Сообщений: 186
|
|
| 26.03.2010, 10:39 [ТС] | |
|
Благодарю за ответы - теперь понятно в каком направлении двигаться :-)
0
|
|
|
56 / 56 / 6
Регистрация: 23.10.2009
Сообщений: 250
|
||
| 26.03.2010, 11:58 | ||
|
0
|
||
| 26.03.2010, 11:58 | |
|
Помогаю со студенческими работами здесь
5
Как сделать, чтобы макрос передавал значения (нужно вывести максимум через переменную)? Проблема с взаимодействием динамической и статической памяти - обращение к статической переменной Как сделать MFC статической, а не динамической? Как заставить сделать фигуры статической Сделать увеличение статической переменной приложения, не зависимо от страниц Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3.
Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
|
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений.
9TO2GP2bpX4
a42b81fb172ffc12ca589c7898261ccb/
https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/
Слева синяя линия -. . .
|
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. .
Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
|