Технологии
Закрыт
vip
Глобальные переменные или передача параметров? С++ - вопрос №2416562
Пишу программу, и переменных у меня в районе 30. Использоваться они будут в порядка 20 подфункций(решается огромная система нелинейных уравнений). Как я понимаю варианта 2:
1) сделать их глобальными и задать вне тел функций
и 2) задать их значения локально (вбиваются с консоли) в теле main функции и передавать их ссылками в другие подфункции ( main2(int a, int b) итд), что учитывая количество переменных и количество функций, где они используются колоссально захламит текст программы).
Читал, что вообще стоит избегать глобальные переменные, выходит остаётся только второй вариант?
Пробовал запихивать переменные в отдельную структуру, но у меня работает только, если обращаться к структуре в главной функции. при обращении в подфункции выдает ошибку (ниже текст и ошибка)
Приведу пример:
#include <iostream> #include <iomanip> #include <fstream> #include <vector> using namespace std; struct znach { int a ; }; void main2(); void main() { znach k ; cin >> k.a; cout << «pokazat' a » << k.a; main2(); system(«pause»); } void main2() { znach p; cout << «pokazat a-2» << p.
Выдает ошибку: использована неинициилизированная локальная переменная «p».
Как наиболее рационально и правильно задать переменные?
апрель 16, 2017 г.
-
Всего ответов: 0
Похожие вопросы
Дано трехзначное число. Найдите сумму его цифр. Надо написать программу в Паскале
декабрь 4, 2014 г.
Решено
дана последовательность действительных чисел а1,а2,..аn.выяснить будет ли она возрастающей
ноябрь 2, 2015 г.