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

Использование глобальных переменных - моветон ли? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Написать программу на c++, демонстрирующие применение механизма одиночного наследования классов http://www.cyberforum.ru/cpp-beginners/thread604803.html
Описание базового класса: Линии: координаты начала и конца, конструктор с параметрами, метод вычисления длины линии. Опсание производного класса: Отрезки: конструктор с параметрами, метод вычисления угла между отрезком и осью ОY, метод вывода данных. Задание: Описать классы, объект производного класса; вывести данные объекта; вычислить и вывести длину и угол с осью ОY.
C++ программа виснет, не знаю что не так Дана квадратная целочисленная матрица. Определить, является ли она магическим квадратом. В магическом квадрате сумма чисел по всем горизонталям, вертикалям и двум диагоналям должна быть одна и та же. #include<iostream> #include <cmath> using namespace std; void vvodA(int **a,int n); void summ(int **a,int n); int main() { int n; http://www.cyberforum.ru/cpp-beginners/thread604793.html
C++ Написать программу работу с динамическими строками
Написать программу работу с динамическими строками. Строка является объектом класса. Память под объект-строку должна выделяться динамически (с помощью new). Должны быть определены деструктор и следующие конструкторы: · Конструктор по умолчанию, создает пустую строку; · Конструктор преобразования, инициализирующий строку с помощью стандартной строки; · ...
Написать програму на С++,что демонстрирует использование механизма одиночного наследования класов C++
Описание базового класа: Линии:Координаты начала и конца,конструктор с параметрамы, метод вычисления длинны линии. Описание производного класа: Отрезки:Конструктор с параметрами
C++ Программа выводит целое число, а надо дробное http://www.cyberforum.ru/cpp-beginners/thread604782.html
Программа должна выводить среднее арифметическое введенной строки. При вводе чисел, арифметич. которых - целое число, все работает правильно, но при вводе, например чисел 5 и 6, выводится целое число, при чем округленное неправильно. Пробовал менять типы переменных, но не помогло. Может быть ошибка кроется в строке sum+=str1-'0'; (я так и не понял зачем здесь - '0', но без него не работает)....
C++ Опишите операторы цикла. Приведите примеры. 1. Опишите операторы цикла. Приведите примеры. 2. Напишите программу на языке СИ++ сложения двух матриц (двумерных массивов). Даны матрицы A и B. Надо их определить и проинициализировать, распечатать, получить матрицу C, которая состоит из сумм элементов массива A и массива B (C = A + B). Результат распечатать. Подсчитать сумму элементов массива C и распечатать. подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
13.06.2012, 20:45     Использование глобальных переменных - моветон ли?
The_Immortal, практически во всех книжках по программированию (не только по С/С++), которые читал, есть предупреждение по поводу использования глобальных переменных, и сводятся они, как правило, примерно к одному и тому же. Вот, что Отцы-Основатели по этому поводу пишут:
Следует отметить тенденцию все переменные делать внешними. Дело в том, что, как может показаться на первый взгляд, это приводит к упрощению связей - ведь списки аргументов становятся короче, а переменные доступны везде, где они нужны; однако они оказываются доступными и там, где не нужны. Так что черезмерный упор на внешние переменные чреват большими опасностями - он приводит к созданию программ, в которых связи по данным не очевидны, поскольку переменные могут неожиданным и даже таинственным способом изменяться. Кроме того, такая программа с трудом поддаётся модификациям.
КиР, глава первая, стих десятый.
 
Текущее время: 20:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru