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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 34, средняя оценка - 4.88
Only_HED
4 / 4 / 0
Регистрация: 28.05.2009
Сообщений: 29
#1

Статический метод и объекты - C++

17.05.2012, 14:51. Просмотров 4619. Ответов 3
Метки нет (Все метки)

Есть класс А с полями, методами и один статический метод.
Как мне через этот статический метод обратиться сразу ко всем объектам этого класса, а точнее к Method1()?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class A
{
public:
    int i;
    void Method1(){};
    void Method2(){};
    static void Method3(){
        //как тут вызвать Method1() ???
    };
}
int main(){
    A a1, a2,a3;
    list<A> my_list ;
    my_list.push_back(a1);
    my_list.push_back(a2);
    my_list.push_back(a3);
 
    //как вызвать Method3()
 
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2012, 14:51     Статический метод и объекты
Посмотрите здесь:

Статический метод - C++
Пытаюсь создать класс в котором будет статический метод. А при вызове этого метода выдаёт ошибку: Использование имени типа не...

Статический элемент и метод класса - C++
Доброго времени суток, разбираюсь со статическим элементом и методом класса. накидал небольшую програмку, но Visual Studio 2010 ее не...

Реализовать статический метод уничтожения объекта - C++
//Создайте класс с закрытыми конструкторами и деструктором. Реализуйте //методы для создания и уничтожения объектов класса. Напишите...

Как объявить статический метод класса? - C++
выдает ошибку на 11 16 19 строку((((((( #include &lt;iostream&gt; using namespace std; class Sop { private: short int kol; ...

Как правильно объявить статический метод - C++
например class A { private: static void method(); // объявление }; // как правильно объявить реализацию?

Как передать нестатическое поле в статический метод класса? - C++
есть статическая фукция static LRESULT CALLBACK WndProc ( HWND,UINT,WPARAM,LPARAM); в ней нужно использоавть поля класса, вопрос -...

метод-доступа, класс, объекты - C++
из книги С++ за 21 день Джесса Либерти #include &lt;cstdlib&gt; #include &lt;iostream&gt; using namespace std; class Cat { ...

Указатель на массив указателей на объекты, передать в метод объекта - C++
Здравствуйте! Нужно решить задачу, есть такой класс. class MyClsDisk { public: void...

Статический метод как точка входа в поток - как избавиться - C++
Привет всем.Вопрос такой: использую потоки в своей программе,они создаются и уничтожаются в классе, и в классе так же находится...

Статический указатель - C++
пример, есть такая конструкция например: class A { ... }; class B { private:

Статический класс - C++
Здравствуйте, а я правильно понимаю что статический класс - это класс у которого все методы статические? Добавлено через 57 секунд ...

Статический указатель - C++
Привет! Возникли вопросы в процессе изучения C/С++. Если объявить статическую (static) локальную переменную, то эта переменная будет...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
KATbIK
86 / 81 / 10
Регистрация: 02.08.2011
Сообщений: 335
17.05.2012, 15:05     Статический метод и объекты #2
Бессмыслица получилась. ))

C++
1
2
3
4
5
6
7
8
9
10
...
Method3(list<A>& my_list)
{ 
    цикл 
    (*it).Method1();
}
 
int main()
...
A::Method3(my_list);
Only_HED
4 / 4 / 0
Регистрация: 28.05.2009
Сообщений: 29
17.05.2012, 15:15  [ТС]     Статический метод и объекты #3
Так вы имели в виду?

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
class A
{
public:
    A();
    void Method1(){
        cout<<"Method1()"<<endl;
    };
    void Method2(){};
    static void Method3(list<A>& my_list){
    list<A>::iterator it;
    for ( it=my_list.begin() ; it != my_list.end(); it++ )
        (*it).Method1();
    };
}
int main(){
    A a1, a2,a3;    
    list<A> my_list ;
    
 
    my_list.push_back(a1);
    my_list.push_back(a2);
    my_list.push_back(a3);
    A::Method3(my_list);
    return 0;
}
zss
Модератор
Эксперт С++
6321 / 5905 / 1913
Регистрация: 18.12.2011
Сообщений: 15,181
Завершенные тесты: 1
17.05.2012, 15:18     Статический метод и объекты #4
Цитата Сообщение от Only_HED Посмотреть сообщение
static void Method3(){ //как тут вызвать Method1() ???
Никак. Статические методы могут работать только со статическими членами.


Цитата Сообщение от Only_HED Посмотреть сообщение
my_list.push_back(a3); //как вызвать Method3()
C++
1
2
A::Method3();
a1.Method3();
Yandex
Объявления
17.05.2012, 15:18     Статический метод и объекты
Ответ Создать тему
Опции темы

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