Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Aleksey Cheusov                      2:5020/400     09 Dec 2002  15:39:02
 To : Denis Kostousov
 Subject : Re: pointer to member function
 -------------------------------------------------------------------------------- 
 
 Denis Kostousov <sandello@permonline.ru> writes:
 
 > Добрый день, уважаемые.
 > Помогите, кто может, побороть проблему.
 > Есть класс, в нем кроме всего прочего есть 2 функции и переменная типа
 > указатель на функцию:
 
 [skipped]
 
 #include <iostream>
 #include <functional>
 
 class A {
 public:
   A ();
   ~A () {};
 
   double inc1 (double a){
    return a + 1.0;
   };
   double inc2 (double a){
    return a + 2.0;
   }
 
   double (A::*m_fun) (double a);
 
   void switch_fun ();
 };
 
 A::A ()
   :
   m_fun (&A::inc1)
 {
 }
 
 void A::switch_fun ()
 {
   if (m_fun == &A::inc1)
    m_fun = &A::inc2;
   else
    m_fun = &A::inc1;
 }
 
 int main ()
 {
   A a;
 
   std::cout << std::mem_fun (a.m_fun) (&a, 10.0)<< '\n';
 
   a.switch_fun ();
 
   std::cout << (a.*a.m_fun) (10.0)<< '\n';
 
   return 0;
 }
 
 -- 
 Best regards, Aleksey Cheusov.
 --- ifmail v.2.15dev5
  * Origin: Science Soft (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Указатель на функц ию   Denis Kostousov   06 Dec 2002 08:47:32 
 Re: Указатель на функц ию   Nikolay Korneyev   09 Dec 2002 14:03:37 
 Re: pointer to member function   Aleksey Cheusov   09 Dec 2002 15:39:02 
Архивное /ru.linux/17283eabd5046.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional