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

разбитие программы на файлы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ прокомментируйте программу http://www.cyberforum.ru/cpp-beginners/thread438186.html
#include <iostream> #include <fstream> #include <string> using namespace std; int main() { int n; cout << "n = "; cin >> n; int *a = new int; for (int i = 0; i < n; i++) { cout << "a = ";
C++ Прокомментируйте программу #include <iostream> #include <fstream> #include <string> using namespace std; int main() { int n; cout << "n = "; cin >> n; int **a = new int*; http://www.cyberforum.ru/cpp-beginners/thread438185.html
C++ Функция с массивом.
Ребята, пожалуйста помогите решить такую задачу. Если не сложно, с комментариями, но можно и без них, разберусь тогда сам. Заранее спасибо. p/s там ошибка, не sin u, a sin x
C++ Применение массивов и функций
Здравствуйте!Помогите сделать программку Вычисление функции X=...... Y=...... SN=...... SE=..... о_погрSN о_погрSE X=...... Y=...... SN=...... SE=..... о_погрSN о_погрSE .......... X=...... Y=...... SN=...... SE=..... о_погрSN о_погрSE Здесь X- значение параметра; SN- значение суммы для заданного n; SE- значение суммы для заданной точности; Y-точное...
C++ Получить массив байтов из int32_t http://www.cyberforum.ru/cpp-beginners/thread438109.html
Собственно сабж! Самое элегантное решение, но как мне кажется не совсем безопасное это что-то типа этого int32_t i; reinterpret_cast<char *>(&i); или же struct arr{ char a1; // либо int8_t
C++ Массивы и функции Функция такова y=1/2(одна вторая) ln x (логарифм от x вроде) y=1/2 ln x Попрошу вас дорогие программисты , в с++ переделать с массивами мой код #include <cstdlib> #include <iostream> #include <math.h> using namespace std; //y=1/2*log(x) //x=0,1,2,3,4,5,6,7,8,9; float y(float x) подробнее

Показать сообщение отдельно
zelim
77 / 77 / 4
Регистрация: 26.12.2011
Сообщений: 217
01.02.2012, 21:49     разбитие программы на файлы
Цитата Сообщение от MaxFX Посмотреть сообщение
Во общем мне нужно добиться одного из двух: либо объявить глобальные переменные чтоб у всех файлов был к ним доступ. Либо заставить функции возвращать больше одного параметра. Посоветуйте пожалуйста как такое реализовать.
Передавайте адрес переменной в функцию.
Например, нужно изменить значение a и b:
C++
1
2
3
4
5
6
7
8
// объявление функции
void func(int &a, int &b); // & показывает, что будем работать с переменной "напрямую"
....
//в функции main()
int a=5, b=3;
...
func(a, b);
// В итоге, все изменения переменных "сохранятся".
Добавлено через 11 минут
Цитата Сообщение от MaxFX Посмотреть сообщение
Только глобальные переменные объявленные в заголовочном файле капризничают
Их тоже так просто не объявишь
Если переменная должна быть объявлена во всех подфайлах (давайте уже правильно выражаться - модулях), то нужно снова работать с #ifndef/#endif
Для этого можно было бы создать отдельный модуль global.h
C++
1
2
3
4
5
6
#ifndef GLOBAL
#define GLOBAL
 
extern int x1;
 
#endif
Ну и инициализировать их в отдельном модуле global.cpp
C++
1
2
#include "global.h"
x1 = 0;
Ну и подключать их в нужных модулях.
Все же, не советую так играть с глобальными переменными. Раз такая надобность в изменении переменных, то лучше передавать их по адресу. Так надежнее, да и заморочек меньше.
 
Текущее время: 21:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru