class CPrintElement
{
public:
KC_PRINT_TYPE kptType; ///< 要打印的元素类型
bool bHasPrint; ///< 是否打印过;初始时表示是否用来重新计算高度
char chFontName[32];///< 元素字体的名称
int iPointSize; ///< 元素字体的尺寸,已经乘过10
void *ptr; ///< 元素的指针
char **chEleName;///< 元素名称的指针数组
int iLeftSep; ///< 相对于左边的相对位置
int iTopSep; ///< 相对于上一个元素的间隔
int iCurItem; ///< 对于要打印多个项的元素,断页时的正在打印的项
int *piWidth; ///< 元素的宽度和高度
int *piHeight; ///<
int *piFormat; ///< 元素的对齐方式
public:
CPrintElement();
CPrintElement(const CPrintElement &temp);
virtual ~CPrintElement();
CPrintElement& operator =(const CPrintElement &temp);
void DeleteMem();
void InitialElement(CWnd *pWnd, KC_PRINT_TYPE printType, CString strContent,
int &iLastEleRight, int &iLastEleBottom);
};
CPrintElement::CPrintElement(const CPrintElement& temp){}
CPrintElement& CPrintElement::operator =(const CPrintElement& temp){ return *this;}
int main()
{
CPrintElement ele1; // 调用构造函数
elel1.InitialElement(.....);
CPrintElement ele2=ele1; // ele2对象不存在,所以调用拷贝构造函数,进行构造过程
ele2.InitialElement(...);
elel2=ele1; // ele2对象已经存在,进行赋值构造函数
}
调用次序如下:
构造函数
拷贝构造函数
赋值构造函数
析构函数
析构函数