MFC绘图基础之C++面向对象程序设计基础

本文只介绍基本的C++基础知识,若需详细学习,请参考其他教程。

(一)类和对象

类:

  class 类名{

    访问权限控制符(public,private,protect)  成员变量/成员函数;

  }

注:1、不加访问权限控制符默认为private;

  2、类内声明成员函数,类外定义

    成员函数的定义:

    类型说明符 类名 :: 成员函数名(<参数表列>)

    {  函数体;  }

 

对象:

  类名 对象表列(<参数表列>);

 

(二)构造函数与析构函数

系统自动执行。

构造函数可以有参数,所以构造函数可以重载。

析构函数没有参数,不能重载。

 

(三)对象的动态建立与释放

原因:有些操作对象只能在程序执行过程中被赋值,编译器在编译时无法为它预留存储空间,只能在程序运行时根据要求进行内存分配(动态存储分配)

 

通过new与delete实现建立对象与释放对象:

   类名 *指针变量名 = new 类名(初始化);

   delete 指针变量名;

1)一维对象数组动态内存的分配与释放:

   类名 *指针变量名 = new 类名[数组大小];

   delete []指针变量名;

 

2)二维对象数组动态内存的分配与释放:

   类名 **指针变量名 = new 类名*[数组行数];

   for(int i=0;i<行数;i++){  指针变量名[i] = new 类名[列数];  }

   

   for(int i=0;i>行数;i++){  delete []指针变量名[i];  }

   delete []指针变量名;

 

(四)继承与派生

继承让你可以使用基类的成员变量和函数,派生让你可以定义自己需要的成员变量和函数

派生类定义:

  class 派生类名:[继承方式(不写,默认为private)]基类名{  派生类新增成员的定义;  }

 

注:基类的构造函数是不能被继承的

 

派生类构造函数的定义:

  派生类构造函数名(总参数):基类构造函数名(参数表列){ 派生类中新增成员的初始化语句; }

  

 

你可能感兴趣的:(MFC绘图基础之C++面向对象程序设计基础)