powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / список методов класса
11 сообщений из 11, страница 1 из 1
список методов класса
    #32929193
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно ли сделать список методов класса,
на чистом С получается, а вот склассами ...
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
class CTest
{
	void f1(){};
	void f2(){};
	void f3(){};
public:
	CTest();
	Test();
private:
	typedef void (*proc)();
	proc f[ 3 ];
};
...
CTest::CTest()
{
	f[ 0 ] = &f1;
	f[ 1 ] = &f2;
	f[ 2 ] = &f3;
}

CTest::Test()
{
   for(int i= 0 ;i< 3 ;f[i++]());
}
...
Рейтинг: 0 / 0
список методов класса
    #32929256
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полиморфизм?
...
Рейтинг: 0 / 0
список методов класса
    #32929282
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПолиморфизм?
зачем если мне нужны все,
ну да ладно, нашел тут
http://linuxquality.sunsite.dk/articles/memberpointers/
...
Рейтинг: 0 / 0
список методов класса
    #32929361
Фотография josia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем такое может понадобиться ?
Код: plaintext
1.
2.
3.
4.
5.
6.
class CTest
{
	void f(int p){};
}
...
for(int i= 0 ;i< 3 ;f(i++));
так не пробовали? Или задача состоит в том, что-бы в коде было невозможно разобраться ?
...
Рейтинг: 0 / 0
список методов класса
    #32929766
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
josiaА зачем такое может понадобиться ?
Код: plaintext
1.
2.
3.
4.
5.
6.
class CTest
{
	void f(int p){};
}
...
for(int i= 0 ;i< 3 ;f(i++));
так не пробовали? Или задача состоит в том, что-бы в коде было невозможно разобраться ?
помоему я написал немного другой код, а именно в цикле обрабатываются все функции, да, если комуто нужно могу дать решение.
...
Рейтинг: 0 / 0
список методов класса
    #32930738
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почитай про указатели на члены класса.
...
Рейтинг: 0 / 0
список методов класса
    #32930886
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivПочитай про указатели на члены класса.
зачем мне читать , мне это надобыло и за того что в зависимости от входных параметров должны были бы сработать те или иные функции и мне не хотелось делать чтото типа if или switch, я использовал map из STL который в зависимости от входного параметра возвращал мне функцию, в итоге я имею чтото такое:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
class A
{
...
void DoF(string func);
typedef void(A::*Proc)();
map <string, Proc> m_procs;
...
}

void A::DoF(string func)
{
   map <string, Proc>::const_iterator l_iterator;
   l_iterator = m_procs.find(func);
   if (l_iterator==m_map.end())
  {
    // ERROR
  } else
  {
    (this->*l_iterator->second)(); // 
  }
}
...
Рейтинг: 0 / 0
список методов класса
    #32931166
Фотография Serega128
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если хочешь на чистом С, то используй структуры. Те-же классы, но все поля имеют тир public.
...
Рейтинг: 0 / 0
список методов класса
    #32931179
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serega128Если хочешь на чистом С, то используй структуры. Те-же классы, но все поля имеют тир public.
зачем ?, у меня все работает.
...
Рейтинг: 0 / 0
список методов класса
    #32931433
Фотография josia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
смотришь на такое и понимаешь что переход с C++ на C# это не так плохо :(
...
Рейтинг: 0 / 0
список методов класса
    #32931466
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
josiaсмотришь на такое и понимаешь что переход с C++ на C# это не так плохо :(
ага, мне как раз тут делегаты и понадобились.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / список методов класса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]