|
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) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/17283eabd5046.html, оценка из 5, голосов 10
|