鱼C论坛

 找回密码
 立即注册
查看: 1723|回复: 0

[技术交流] C++(12th for one):对象

[复制链接]
发表于 2021-2-9 19:52:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 一叶枫残 于 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();[code]
对于同一个类的两个对象来说,可以使用以下方法把一个对象的属性赋值给另一个对象
[code]Notebook2 = Notebook1;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-22 17:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表