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

Оправдано ли использовать глобальные переменные и константы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Функция для получения пути к приложению http://www.cyberforum.ru/cpp-beginners/thread1063986.html
Привет, как написать функция которая будет возвращать путь к запущенному приложении ? if( !gSplashTexture.loadFromFile( "splash.png" ) ) { printf( "Failed to load splash texture!\n" ); success = false; } нужно ее вставить в первую строку, splash.png будет лежать в папке с программой
C++ Двухмерный массив: найти максимальный из элементов, лежащих ниже побочной диагонали Привет всем помогите с задачей на С++. Ввести матрицу размером NxM. Память для массива выделить динами- чески. Найти максимальный среди элементов, лежащих ниже побочной диагонали. Предусмотреть в программе использование функции пользователя. http://www.cyberforum.ru/cpp-beginners/thread1063984.html
Определить изоморфен ли граф своему дополнению C++
Добрый день. Существует ли какой либо критерий для неориентированных графов. В данном случае есть граф и есть его дополнение нужно определить изоморфны ли друг другу они. И еще, матрицу смежности дополнение графа найти я так полагаю можно за счет обратной матрицы смежности графа, то есть кроме главной диагонали, везде меняем 0 на 1 и наоборот?
Найти все трехзначные парные числа, которые являются точными квадратами C++
Помогите пожалуйста 1. Найти все трехзначные чётные числа, которые есть точными квадратами. 2. Протабулировать функцию f(x,y) , якщо x є(1;1,4) , а y є (0;0,5) з с шагом обоих переменных 0,05.
C++ Как написать свой таймер? http://www.cyberforum.ru/cpp-beginners/thread1063939.html
Чтобы функция выполнялась скажем каждые 200 миллисекунд. Сейчас WM_TIMER делает это, но он не подходит. Искал по многим запросам в гугле и не смог найти простого примера.
C++ Какие есть специальные символы и каково их назначение? какие в с++ есть специальные символы и каково их назначение? подробнее

Показать сообщение отдельно
Убежденный
Системный программист
Эксперт С++
15102 / 6797 / 1073
Регистрация: 02.05.2013
Сообщений: 11,110
Завершенные тесты: 1
06.01.2014, 11:58     Оправдано ли использовать глобальные переменные и константы
Цитата Сообщение от akarad Посмотреть сообщение
Немало слышал и читал о том, что глобальные переменные использовать крайне не рекомендуется.
Да. Код с глобальными переменными труднее поддерживать, он подвержен ошибкам.

Цитата Сообщение от akarad Посмотреть сообщение
Но как тогда быть, если функция должна работать с большим количеством значений и при этом почти все значения могут меняться в ней? Тогда список аргументов получается просто огромным. И что если таких функция должно быть несколько?
Можно запихнуть значения в структуру и передать ее адрес, как аргумент.
Но вообще, функция с большим количеством аргументов - это само по себе подозрительно.

Цитата Сообщение от akarad Посмотреть сообщение
У меня возникла небольшая мысль, а что если все глобальные переменные засунуть в отдельный файл? Не знаю решит ли это проблему и как это вообще сделать, но не будет ли это тем же, что использовать глобальные переменные в main.cpp?
Скажем так, это немного сгладит проблему, но не решит ее.
Конечно, приятнее работать с глобальными переменными централизовано, а не
бегать за ними по сотне файлов. Кстати, глобальные переменные можно делать
static или помещать в анонимные пространства имен, тогда они будут видны
только в пределах файла.

Цитата Сообщение от akarad Посмотреть сообщение
И что насчет использования глобальных констант? И можно ли их засунуть в отдельный файл?
Можно. Только есть одна тонкость - глобальные константы имеют внутреннее
связывание (C++03, 3.5.3), поэтому для их "расшаривания" в другие cpp-файлы
необходимо добавлять extern к объявлению.
 
Текущее время: 15:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru