От: | RussianFellow | http://russianfellow.livejournal.com | |
Дата: | 11.03.16 06:39 | ||
Оценка: |
void function1(char *s, long double &val)
{
//...
}
void function2(char *s, long double &val)
{
//...
}
typedef void (*p1)(char*, long double&);
typedef std::pair<int,p1>::const_iterator p1iter;
std::map<int,p1> mymap1;
std::map<int,p1>::const_iterator p1iter;
mymap1.insert(p1pair(1,&function1));
mymap1.insert(p1pair(2,&function2));
class myclass
{
public:
//...
void myfunc1(long double val);
void myfunc2(long double val);
void callmyfunc1andmyfunc2();
//...
}
typedef void (*p2)(long double);
typedef std::pair<int,p2> p2pair;
std::map<int,p2> mymap2;
std::map<int,p2>::const_iterator p2iter;
mymap2.insert(p2pair(1,&myfunc1));
mymap2.insert(p2pair(2,&myfunc2));
Error: отсутствуют экземпляры конструктора "std::pair<_Ty1,_Ty2>::pair[c_Ty1=int,_Ty2=p2]",
соответствующие списку аргументов типа аргументов:
(int,void(myclass::*)(long double val))