若有一个类声明如下
class CAnClass
{
......
public:
SetColor(int color_id);
......
};然后在某处使用到这个类的两个对象,如下:
CAnClass m_classA, m_classB;
m_classA.SetColor(1);
m_classB.SetColor(2);那么,编译器对此函数的解释应该是
CAnClass::SetColor(1, (CAnClass*)&m_classA);
CAnClass::SetColor(2, (CAnClass*)&m_classB);还是
SetColor((CAnClass*)&m_classA, 1);
SetColor((CAnClass*)&m_classB, 2);
class CAnClass
{
......
public:
SetColor(int color_id);
......
};然后在某处使用到这个类的两个对象,如下:
CAnClass m_classA, m_classB;
m_classA.SetColor(1);
m_classB.SetColor(2);那么,编译器对此函数的解释应该是
CAnClass::SetColor(1, (CAnClass*)&m_classA);
CAnClass::SetColor(2, (CAnClass*)&m_classB);还是
SetColor((CAnClass*)&m_classA, 1);
SetColor((CAnClass*)&m_classB, 2);
SetColor((CAnClass*)&m_classB, 2);
见其书第53页。