C ++ Статический член указатель на функцию - как ее инициализировать? - PullRequest
7 голосов
/ 07 февраля 2012

У меня есть статический указатель для функции, подобной следующей в моем классе, но я не уверен, как ее создать:

class Foo{ 
 private:   
    static double (*my_ptr_fun)(double,double);                               
};

1 Ответ

8 голосов
/ 07 февраля 2012

Точно так же, как вы инициализируете любой другой статический объект-член в C ++ 03:

class Foo{ 
 private:   
    static double (*my_ptr_fun)(double,double);                               
};

double bar(double, double);

double (*Foo::my_ptr_fun)(double,double) = &bar;

Что бы вам ни понадобилось, статический указатель на функцию в любом случае.

Это называется initialization. instantiation означает что-то другое в C ++.

...