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

Инициализация static переменной - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
Gepar
 Аватар для Gepar
1173 / 529 / 20
Регистрация: 01.07.2009
Сообщений: 3,512
24.09.2011, 18:38     Инициализация static переменной #1
Задание опять же таки из книги Страуструпа:
Определите два класса, каждый со статическим членом, так, чтобы конструирование статического члена использовало ссылку на другой статический член. Где такое может встретиться в реальном коде? Как нужно модифицировать эти классы, чтобы устранить в конструкторах зависимость от порядка?

Что-то не представляю я как это сделать. Допустим есть у меня 2 класса с static переменными и первую я инициализировал, а как быть со второй? Как это понять что её нужно инициализировать ссылкой на первую?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class one
{
    public:
    static int x;
    static void setx(int y)
    {
        x=y;
    }
};
 
class two
{
    public:
    static int y;
};
 
int one::x(2);
int two::y;
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
KuKu
 Аватар для KuKu
1538 / 1016 / 69
Регистрация: 17.04.2009
Сообщений: 2,946
24.09.2011, 21:31     Инициализация static переменной #2
Может это хотят:
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
#include <cstdlib>
#include <iostream>
 
using namespace std;
class one
{
    public:
    static int x;
};
 
class two
{
    public:
    static int& y;
};
 
int one::x = 10;
int& two::y = one::x;
 
int main()
{
    cout << one::x << endl;
    cout << two::y << endl;
    one::x = 20;
    cout << two::y << endl;
    system("pause");
    return(0);
}
Gepar
 Аватар для Gepar
1173 / 529 / 20
Регистрация: 01.07.2009
Сообщений: 3,512
24.09.2011, 21:47  [ТС]     Инициализация static переменной #3
Цитата Сообщение от KuKu Посмотреть сообщение
Может это хотят:
Цитата Сообщение от Gepar Посмотреть сообщение
Определите два класса, каждый со статическим членом
Не думаю, у Вас же второй элемент ссылка на int, а не статический член. Хотя ... но тем не менее как тогда можно реализовать это:

Цитата Сообщение от Gepar Посмотреть сообщение
Как нужно модифицировать эти классы, чтобы устранить в конструкторах зависимость от порядка?
KuKu
 Аватар для KuKu
1538 / 1016 / 69
Регистрация: 17.04.2009
Сообщений: 2,946
24.09.2011, 21:59     Инициализация static переменной #4
Зависимость кого и от порядка чего?)
Gepar
 Аватар для Gepar
1173 / 529 / 20
Регистрация: 01.07.2009
Сообщений: 3,512
25.09.2011, 04:23  [ТС]     Инициализация static переменной #5
KuKu, ну я так понял что вторая часть подразумевает убрать зависимость между тем какая статическая переменная будет инициализирована первой.
Yandex
Объявления
25.09.2011, 04:23     Инициализация static переменной
Ответ Создать тему
Опции темы

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