Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Насколько нужно выучить C++, перед тем как переходить на C#? https://www.cyberforum.ru/ cpp-beginners/ thread922839.html
Я изучаю программирование (язык С++) дома, в институте наверно тоже скоро будем его изучать. Я знаю, что C++ очень полезно знать и владение им на хорошем уровне всегда приветствуется. Но меня очень...
Стартовый код компилятора VS C++
Программа написанная на C++ под отладкой показывает, много кода, который явно не включался в исходный код в отличие от программы написанной на ассемблере. В веб толком ничего не нашел. Рихтер...
C++ Класс Car. Наследование
1) У нас есть class Car --> св-ва maxspeed, currentspeed. Методы Getmaxs(), Getcurrs() которые соответственно возвр. maxspeed и currentspeed. Также есть метод Setcurrs()(этот метод нужен для...
C++ Авторизация но на сайте javascripts Ув.Форумчане, хотел спросить, вот я хочу создать авторизацию на сайт. Допустим что-бы авторизоваться на сайт vk.com, все давно легко Я через сниффер увидел... https://www.cyberforum.ru/ cpp-beginners/ thread922819.html
C++ непонятно зачем нужный map.value_comp https://www.cyberforum.ru/ cpp-beginners/ thread922816.html
непонимание здесь в том, что зачем мы пишем std::pair<char,int> highest = {'d',3006} ; если все равно всё сравнение идёт по "char" а, не по int. Для этого есть же key_comp которому при сравнении...
String, конкатенация и "необъявленные" строки C++
Доброго времени суток! Во время написания простого примера (изучаю язык) наткнулся на проблему с конкатенацией строк: #include <iostream> #include <string.h> using namespace std; int main()...
Iseq C++
Здорова! Есть задачка: "Определите версию iseq() (параграф 18.3.1), для встроенных массивов istream и пар итераторов. Задайте подходящий набор перегруженных не модифицирующих последовательность...
C++ Не записываются числа Написал программу, которая с помощью цикла записывает в файл числа от нуля до 423. Но почему то компилятор выдает ошибку если я записываю цифры. Если же это слова, то все норм: #include "StdAfx.h"... https://www.cyberforum.ru/ cpp-beginners/ thread922786.html
C++ Проблемка с exit https://www.cyberforum.ru/ cpp-beginners/ thread922773.html
Пример из книги. #include <iostream> #include <iomanip> // для setw() #include <process.h> // для exit() using namespace std; int main() { unsigned int n, j; cin >>...
C++ Запись в файл Не понимаю в чем дело. Написал программу которая записывает значения в файл. На деле она записывает данные в файл, если он находиться в папке с программой. Если же я указываю файл в другой папке,... https://www.cyberforum.ru/ cpp-beginners/ thread922771.html
3 / 3 / 1
Регистрация: 13.07.2013
Сообщений: 71
19.07.2013, 17:32 0

Как обычную переменную на время сделать константой?

19.07.2013, 17:32. Просмотров 7866. Ответов 66
Метки (Все метки)

Ответ

Цитата Сообщение от Nikitko_Cent Посмотреть сообщение
Кстати да, kotgav, если ты под глобальной подразумевал переменную, к которой можно обращаться за пределами класса, то используй код, написанный мной выше, а если ты под глобальной подразумевал переменную, которая будет у экземпляров класса единственная (и неповторимая ) , независимо от количества этих самых экземпляров, то используй статическую переменную :

C++
1
2
public: //используй любой нужный уровень доступа, это для примера
static int a;
Вот в этом примере (я его приводил выше) есть глобальная переменная:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include "stdafx.h"
#include <iostream>
using namespace std;
 
int a = -1;         // глобальная вспомогательная переменная
 
 
// Главная (вызывающая) функция
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL, "Russian");
    int i = 0;
    int b = 0;
    int c = 0;
 
    for(i=1; i<5; ++i)
    {
        if (a < 0)
        {
            a = i;      // "замораживаем" начальное значение переменной i в глобальной переменной а
        }
 
        b = a;          // присваиваем "замороженное" переменной b, которая выполняет роль временной константы в вызывающей функции
        c = i-b;         // текущая разность
        cout << "i= "<< i << " а= " << b << " c= " << c << "\n" << endl;;    // вывод текущего i и "замороженного foo1(i)" значений 
        system("pause");
    }
    system("pause");
    return 0;
}
Я пока точно не знаю, но чувствую, что для каждого экземпляра класса должна быть своя глобальная переменная, чтобы счетчики времени работали независимо друг от друга (они запускаются разными событиями и в разное время, иногда друг за другом).
Поэтому посмотрю один вариант, потом другой, потом третий. Выберу наиболее подходящее.

Вернуться к обсуждению:
Как обычную переменную на время сделать константой?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.07.2013, 17:32

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как сохранить значение адреса указателя в обычную переменную?
Всем привет. Пишу лабиринт на C++. С языком знаком мало. В общем, я в курсе, что можно в функцию...

Как сделать вводимое с консоли значение константой?
Например я ввожу значение с консоли a = Convert.ToInt32(Console.ReadLine()); как сделать a -...

из массива в обычную переменную
есть char'овский массив такого содержания &quot;100&quot; как перенести этот массив в обычную переменную...

Как сделать обычную кнопку в режиме ключа?
Добрый день! Есть кнопка типа Button (решение с ToggleButton не подходит), мне нужно сделать,...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.