Форум программистов, компьютерный форум CyberForum.ru

Нужно сделать переменную статической - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти произведение и количество элементов линейной таблицы, имеющих четные значения http://www.cyberforum.ru/cpp-beginners/thread108817.html
1) Составить программу для подсчета произведения и количества элементов линейной тфблицы B, состоящей из 24 целых чисел имеющих четные значения. 3) Заданны два одномерных массива А и В разномерности N. Составить программу, проверяющую, можно ли, меняя местами элемеенты одномерного массива А, получить одномерный массив В. Учесть, что массив состоит из неповторяющихся по значению элементов.
C++ Сложение двух чисел Сложение двух чисел. Как, если оба числа в диапазоне от 0 до 2*10^9 ? Если складывать 2*10^9 + 2*10^9 то long int не справляется(( http://www.cyberforum.ru/cpp-beginners/thread108808.html
C++ Дана последовательность целых чисел, за которой следует 0. Найти количество четных элементов этой последовательности
Дана последовательность целых чисел, за которой следует 0. Найти количество четных элементов этой последовательности. Помогите!!!
C++ массив.С++
ПОМОГИТЕ ПОЖАЛУЙСТА!!! 1.Составить программу, которая обнуляет в целочисленном массиве А размерности N элементы, расположенные между максимальным и минимальным элементами. 2.Составить программу, которая в целочисленной таблице А, состоящей из N чисел находит такую пару элементов из интервала (-5;5), сумма модулей которых максимальна.
C++ Нахождение пар чисел равныхпроизведению заданного числа( одномерный массив) http://www.cyberforum.ru/cpp-beginners/thread108801.html
Составить программу, которая в целочисленном массиве А, состоящем из N чисел находит количество таких пар элементов, произведение которых равно заданному числу Х. Помогите!! заранее спасибо
C++ Нахождение максимального значения массива Составить программу, которая находит максимальное значение среди элементов линейной таблицы Y, состоящей из N вещественных чисел, имеющих нечётные индексы. Пожалуйста помогите !Заранее спасибо подробнее

Показать сообщение отдельно
breate
 Аватар для breate
56 / 56 / 2
Регистрация: 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++. Уильям Форд, Уильям Топп
 
Текущее время: 14:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru