关于const变量和inline函数对其的调用
在.h文件中定义了一个参数:
const int m_kStartX;
并且定义了一个函数inline long __fastcall TForm1::ToPhysicalX(long x );
在.cpp文件中函数体如下:
inline long __fastcall TForm1::ToPhysicalX(long x)
{
return (m_kStartX + (x - m_iMinX) * 256 / (m_iMaxX - m_iMinX));
}
请问如何初始化m_kStartX,在.cpp文件中吗?好像不行,因为const变量是在定义的时候就应该初始化的,但是,
在.h文件中又好像不可以,晕掉了! 而且要在inline函数中使用它。请大侠留联系方式,谢谢!
[解决办法]
在m_kStartX所在的类的构造函数的前导中.
class myClass
{
private:
const int m_kStartX;
public:
myClass(int __m_kStartX) : m_kStartX(__m_kStartX) {}
};