cpp学习系列一:数据结构

自定义结构体:struct type_name { member_type1 member_name1; member_type2 member_name2; member_type3 member_name3; . . } object_names;

比较:自定义结构体的类型和数组不同,是可以不同类型放在一起的。

实例化:

  1. 对于结果包含类型的数据,需要使用strcpy函数同时输入类型名和值
  2. 对于只有值没有类型的数据,直接通过实例名.类型=值进行复制即可
  3. 以上两种情况访问时均可直接实例名.类型进行修改

系列二:类

定义

类的定义:class 类名

类包含的成员:常、变量和函数

成员的类型:

  1. private:默认类型:私有。无法从类外访问(包括无法被继承类访问)
  2. public:公有。可以从程序的任意位置访问
  3. protected:半私有。无法从类外访问,但是可以被继承类访问

在类中同一类型的成员可以放在同一{ }中进行定义

类中的函数可以在没有引入常变量的情况下调用,函数的形参为void

例如下:getVolume直接用void引入常量

class Box
{
public:
double length; // 长度
double breadth; // 宽度
double height; // 高度
double getVolume(void);// 返回体积
};

类函数的外部定义:先在类内预定义,再通过:类名::函数名(形参){}进行定义。

类的构造函数

定义:类的构造函数是一类特殊的成员函数,每次再创建新的实例时自动执行。

特点:类的构造函数的名称与类的名称相同且不返回任何类型,定义时直接 类名()即可。

用途:

  1. 提示类成功实例化
  2. 为变量设置初始值,例如下:

    C::C( double a, double b, double c): X(a), Y(b), Z(c)
    {
    ....
    }

类的析构函数

定义:删除实例时自动执行的函数

定义语句:~类名():