C++的类

来源:互联网 发布:继续教育网络多少钱 编辑:程序博客网 时间:2024/05/20 05:30

定义

将现实中的事物归纳总结,并用变量和方法去描述形成的模型。是模块化代码的一种,有利于代码重用
eg.

class Person{public:              //公有,外部对象可以直接访问和修改    explicit Person();      //构造函数,一般在构造函数中会将对象的成员变量进行初始化     ~Person();                //析构函数,一般会将类申请的资源回收    char* getName(){ return szName;};       //在函数内实现的函数,默认为内联函数    inline void setName();                  //正常声明的内联函数protect:             //保护,外部对象不可以直接访问和修改private//私有,外部对象不可以直接访问和修改    int m_id;        //成员变量    char szName[];    int a;      int b;    int c;}void Person::Person() :    a(1),b(2),c(a+b)    //类的初始化列表{}void Person::~Person(){}

重点

1.explicit关键词可以防止类对象被隐式转换2.如果不希望类的使用者对类进行初始化,那么将构造函数设置为私有3.类的初始化列表的效率比在构造函数中赋值高,但是如果初始化的参数之间有因果关系,那么要注意初始化列表参数的顺序,编译器是根据成员变量声明的顺序来初始化的4.一个类如果不存在构造、析构、copy构造和copy assignment操作符函数,编译器会默认生成,其中copy构造和copy assignment操作符只会单纯的将成员变量拷贝到新的类,如果该实现不能满足需求,请自己实现5.this指针:一个指向类对象的指针,在类中可以用this指针去访问类的成员变量和方法。编译器一般会将this指针存放在类对象的开头位置。6.如果说是空类,编译器会默认赋值1字节内存给类对象7.类的继承和多态
原创粉丝点击