一叶枫残 发表于 2021-2-9 19:52:27

C++(12th for one):对象

本帖最后由 一叶枫残 于 2021-2-9 20:31 编辑

对象
首先先说类,类是一个模型,当我们为这个类创造实例的时候,这个实例就是对象;
结构体与对象的区别:对象的内部可以有变量,而结构通常只由各种变量构成
声明一个类:
class Notebook                //跟在class后面的是你想创建类的名字
{                               
        ;
};
注意,类名的第一个字母采用大写是一种习惯上的标准,但不是硬性规定
声明类后面也有一个分号;

对于一个类,里面可以声明变量,声明函数,对于变量它是类的属性,对于函数它是类的方法;
声明变量之前我们写除public,如下
class Notebook
{
public:                        //public不写编译器是不会报错的,请注意写;
        int num;
        std::string color;
        char size;
        int elect;
};
然后我们可以在里面声明函数
class Notebook
{
public:
        int num;
        std::string color;
        char size;
        int elect;
       
        void printf_desktop();
        void charge(int ma);
};
之后我们就可以定义函数了,写在我们声明的类的下面(不是里面)
void Notebook::printf_desktop()
{
        ;
}
void Notebook::charge( int ma )
{
        ;
}

知识补充:域操作符(::)
作用:告诉编译器这个方法属于哪一个类
(养成习惯尽量不用 using namespace ...)

C++允许在类里面声明变量,但不允许对它进行赋值(这个赋值是在类的声明里面赋值),例如
class Notebook
{
public:
        int num = 11235;
};
我们对num进行了赋值,会让编译时出现Warning;
但是我们可以创建一个静态变量进行赋值
class Notebook
{
public:
        static const int full_elect = 100;
};


我们允许在声明一些类的同时同时创建该类的对象,但不是一种良好的编程习惯,如下
class Notebook
{
        ;
}Notebook1 , Notebook2;
我们可以在主函数里面创建该类的对象,方法是类名加对象名
Notebook Notebook1,Notebook2;
创建之后我们就可以进行赋值操作与函数调用(即方法使用),方法如下
Notebook1.color = "blue";
Notebook1.printf_desktop();
对于同一个类的两个对象来说,可以使用以下方法把一个对象的属性赋值给另一个对象
Notebook2 = Notebook1;
页: [1]
查看完整版本: C++(12th for one):对象