class A {
	public:
		A() { a = 1111; }
		virtual void f() { cout << "aF" << endl; }
		virtual void g() { cout << "gF" << endl; }
		virtual void h() { cout << "hF" << endl; }
		virtual void i() { cout << "iF" << endl; }
	public:
		int a;
};
		
typedef void (A::*pfA)();
typedef void (*pf)();
int main(int argc, char *argv[])
{
	A obA;
	pfA *p;	
	/*long *vtbl = (long*)&obA;
	p = (pfA*)vtbl[0];
 	(obA.*p[0])();*/
        cout << sizeof(pf) << '\t' << sizeof(pfA) << endl;
  	return 0;
}
#g++ -m32 test.cpp -o test
#./test
4 8
Почему на функцию члензанимет 8 байт.
Спасибо.

    
      Ответ на:
      
          комментарий
        от ival 
  
    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
      Ответ на:
      
          комментарий
        от ival 
  
    
      Ответ на:
      
          комментарий
        от ival 
  
    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
      Ответ на:
      
          комментарий
        от ival 
  
    
        Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
      
Похожие темы
- Форум Вопрос по С++ (2004)
- Форум C++/exceptions - деление на ноль не ловиццо, почему? (2006)
- Форум [C++] Перегрузка new и delete в производном классе (2011)
- Форум перегрузка виртуальных функций. (2015)
- Форум Какие правила языка C++ здесь используются? (2017)
- Форум linux gtkmm c++ g++: class Gtk::Application’ has no member named ‘make_window_and_run’ (2022)
- Форум constexpr массивы в c++ (2018)
- Форум [Qt][Console] Сигнал завершения программы (2010)
- Форум Qt: QThread ? (2010)
- Форум Поглумиться над cl.exe (2006)