【C++学习笔记】类

来源:互联网 发布:淘宝人群标签在哪里看 编辑:程序博客网 时间:2024/06/05 19:16
一、类

一)声明一个类

class ClassName
{
public:
        float attribute; //类的属性
void method(float variable);  //类的方法,方法的原型
};


(二)类的方法的定义

void ClassName::method(float variable)
{
       final = variable; 
}


二、类的构造器

(一)类的构造器
class ClassName
{
public:
        ClassName(void);
};


(二)类的构造器的定义

ClassName::ClassName(void)
{
public:
        float attribute; //类的属性       
}


三、类的析构器

(一)类的析构器
class ClassName
{
public:
        ~ClassName(void);
};


(二)类的析构器的定义

ClassName::~ClassName(void)
{
public:
        float attribute; //类的属性       
}


四、this指针

(一)当类的属性与方法的参数名字一样时,系统怎无法区分是将类的属性传给方法的参数还是方法的参数传给类的属性
this -> attribute = attribute;
this所代表的含义即是指向的类,以上的含义即是:类指向的变量等于方法的变量。


五、类的继承

基类 = 父类 = 超类 = superclass 
子类 = subclass
class SubClass: public SuperClass{...}


六、继承机制中的构造器和析构器

父类和子类都存在构造器时,且传入的参数一致时。
SuperClass::SuperClass(float theNumber)
{
         number = theNumber
}
SubClass::SubClass(float theNumber) : SuperClass(theNumber){}
含义:当调用SubClass构造器时(以theNumber作为参数),SuperClass构造器也将被调用(theNumber输入参数将传递给它)


七、类的访问控制

(一)在父类定义的方法和属性实施访问控制
class SuperClass
{
public:
protected:
private:
};


(二)在子类中控制可以访问基类的方法和属性

class SubClass: pubilc SuperClass{...};
class SubClass: protected SuperClass{...};
class SubClass: private SuperClass{...};