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

Глобальные переменные - C++

Восстановить пароль Регистрация
 
Rolion
 Аватар для Rolion
14 / 14 / 3
Регистрация: 04.01.2011
Сообщений: 195
06.11.2011, 18:22     Глобальные переменные #1
Как в C++ завести глобальную (общую для функции и самой программы) переменную?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.11.2011, 18:22     Глобальные переменные
Посмотрите здесь:

C++ Глобальные переменные
C++ глобальные переменные
Глобальные и статические глобальные переменные C++
C++ Глобальные переменные
Глобальные переменные C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Сыроежка
Заблокирован
06.11.2011, 18:27     Глобальные переменные #2
Цитата Сообщение от Rolion Посмотреть сообщение
Как в C++ завести глобальную (общую для функции и самой программы) переменную?
Достаточно объявить эту переменную в глобальном пространстве имен, то есть вне всякой функции и вне пользовательского пространства имен.

Например,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include   <iostream>
 
int i = 10;  // глобальная переменная i
 
void f( int i )
{
   std::cout << " i = " << i << std::endl;
   std::cout << "::i = " << ::i << std::endl;
}
 
int main()
{
   int i = 20;   // локальная переменная i
 
   f( i );
}
ValeryLaptev
Эксперт C++
1005 / 784 / 46
Регистрация: 30.04.2011
Сообщений: 1,595
06.11.2011, 18:28     Глобальные переменные #3
Rolion, если функция и main() в одном файле, то просто объяви переменную сразу после include
Сыроежка
Заблокирован
06.11.2011, 18:32     Глобальные переменные #4
Цитата Сообщение от Сыроежка Посмотреть сообщение
Достаточно объявить эту переменную в глобальном пространстве имен, то есть вне всякой функции и вне пользовательского пространства имен.

Например,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include   <iostream>
 
int i = 10;  // глобальная переменная i
 
void f( int i )
{
   std::cout << " i = " << i << std::endl;
   std::cout << "::i = " << ::i << std::endl;
}
 
int main()
{
   int i = 20;   // локальная переменная i
 
   f( i );
}
Вы также переменную можете объявить в неименованном пространстве имен. Тогда эта переменная будет иметь внутреннее связывание аналогично объявлению переменной с помощью спецификатора static, и не будет видима в других единицах компиляции, а только в текущей единице компиляции.
Yandex
Объявления
06.11.2011, 18:32     Глобальные переменные
Ответ Создать тему
Опции темы

Текущее время: 07:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru