【C++】【学习笔记】【014】对象

1、 使用对象进行编程是C++的核心,也是我们常说的C++比C“高级”的重要根据之一。
2、类(Class)就像是一幅蓝图,它决定一个对象将是什么样的(具备什么样的属性和功能)。
3、OOP过程的第一步是创建一个类,而每个类跟变量一样都有一个名字。
class MyFirstClass
{
};
4、类名的第一个字符采用大写是一种习惯上的标准,但不是硬性规定。在类声明末尾,必须有一个分号,这一点跟C++结构情况相同。

造辆车:先定义类的简单属性,然后再给类添加方法(先在类的声明里创建一个方法的原型,稍后再实现这个方法)。
#include <iostream>
class Car 
{
public:
    std::string color;
    std::string engine;
    float gas_bank;
    unsigned int wheel;

    void fillTank(float liter);
    int running(void);
};

void Car::fillTank(float liter)
{
    gas_bank += liter;
}

int main()
{
    Car car1;
    car1.fillTank(80);

    return 0;
}
1、作用域解析符::的作用是告诉编译器这个方法存在于何处,或者说是属于哪一个类。
2、事实上,std::cout所引用的是std里定义的cout,而std::string数据类型其实也是一个对象。我们一直在使用对象,只是自己还不知道罢了。
3、面向过程技术关注的是对数据进行处理的过程,OOP技术关注的是对数据进行怎样的处理。
4、对象与结构有很多相似之处,但前者还可以有它们自己的函数。记住这点区别对掌握OOP技术的要领很有帮助。

注意点
1、C++允许在类里声明常量,但不允许对它进行赋值。如下:
class Car
{
public:
    const int TANKSIZE = 85; // 不允许!!
};
绕开这一限制的方法就是创建一个静态常量(不建议这么做)。如下:
class Car
{
public:
    static const int TANKSIZE = 85; // OK!!
};
2、类似于使用结构的情况,可以在声明某个类的同时立刻创建一些该类的对象。如下:
class Car
{
    ...
}car1, car2;
这种方法在C++里是允许的,但作为一种良好的编程习惯,应该避免这种做法!
3、假设我们有以下代码:
Car car1, car2;
car1.setColor("WHITE");
...
car2 = car1;
这里把一个对象赋值给另一个同类的对象,将会自动使同名的属性有同样的值。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值