gcc 4.3.4 - вызов приватного метода
От: dad  
Дата: 19.08.09 16:17
Оценка:
Случайно наткнулся на то, что можно сделать так:

#include <iostream>

class  my
{

  void show()
  {
    std::cout << "show" << std::endl;
  }

};


template<class Type,void (Type::*Mem1)()  >
struct call
{
  static void doit(Type*p)
  {
    (p->*Mem1)();
  }
};



int main()
{
  call<my, &my::show>::doit( new my() );  
}


Не проверял нигде больше
Веру-ю-у! В авиацию, в научную революци-ю-у, в механизацию сельского хозяйства, в космос и невесомость! Веру-ю-у! Ибо это объективно-о! (Шукшин)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.