int (Screen::*pmfi)() = &Screen::height;
Screen& (Screen::*pmfS)( const Screen& ) = &Screen::copy;
请问这些表达式是如何组织的,我怎么一点都看不懂,比如年吨int(Screen::*pmfi)()是什么意思,要理解又需要具体哪些方面的知识
Screen& (Screen::*pmfS)( const Screen& ) = &Screen::copy;
请问这些表达式是如何组织的,我怎么一点都看不懂,比如年吨int(Screen::*pmfi)()是什么意思,要理解又需要具体哪些方面的知识
int (Screen::*pmfi)() = &Screen::height;
指的是定义一个函数指针 pmfi,pmfi指向的函数地址是 Screen类的成员函数height。
调用执行pmfi就等于执行height。
Screen& (Screen::*pmfS)( const Screen& ) = &Screen::copy; Screen temp, temp2;
temp.*pmfi(); // temp.height();
temp.*pmfS(temp2); //temp.copy(temp2);
构造函数的参数?
Screen& (Screen::*pmfS)()//这是一个函数。
中的( const Screen& ) //是上面函数的参数。这个参数是不能修改的类Screen的引用。写得真麻烦。