• C++ 对象和类(1)


            类和结构体是比较相似,而传统的C的结构体中都是一些数据的类型,类除了有数据之外还有函数。所以可以把类想象成一个具有既有数据又有函数的复合数据类型。

            类是一种将抽象转换为用户定义类型的C++工具,它将数据表示和操纵数据的方法组合成一个整洁的包。

            以股票为例:

    股票中的数据类型有:股票的价格,股票的公司,所持股票的量等等。

    可执行的操作限制为:获得股票,增持,卖出股票,更新股票价格,显示所持股票的信息。

            存储下面的信息:

    • 公司名称;
    • 所持股票的数量;
    • 每股的价格;
    • 股票总价;

            然后定义类。一般来说,类规范由两个部分组成。

    • 类声明:以数据成员的方式描述数据部分,以成员函数(被称为方法)的方式描述公有接口。
    • 类方法定义:描述如何实现类成员函数。

            简单来说,类声明提供了类的蓝图,而方法定义则提供了细节。

    一般来说把类的定义放在.h文件中,类的成员函数的实现放入.c文件中

            凡是出现在private中出现的标识无论是函数还是数据的某个变量某个类型,都只能通过public中的方法间接地去访问它。

     GNU nano 6.2                    stock00.h

    1. #ifndef __STOCK00_H__
    2. #define __STOCK00_H__
    3. #include
    4. class Stock
    5. {
    6. private:
    7. std::string company;
    8. long shares;
    9. double share_val;
    10. double total_val;
    11. void set_totl(){total_val = shares * share_val;}
    12. public:
    13. void acquire(const std::string &co,long n,double pr);
    14. void buy(long num,double price);
    15. void sell(long num,double price);
    16. void update(double price);
    17. void show();
    18. };
    19. #endif

             关键字private和public,它们描述了对类成员的访问控制。使用类对象的程序都可以直接访问公有部分,但是只能通过公有成员函数(友元函数)来访问对象的私有成员。

            只能通过public的函数访问private。

            控制对成员的访问:公有还是私有

            无论类成员是数据成员还是成员函数,都可以在类的公有部分或私有部分声明它。但是由于隐藏数据是OOP主要的目标之一,因此数据项通常放在私有部分,组成类接口的成员函数放在公有部分:否则,就无法从程序中调用这些函数。正如Stock声明所示,可以把成员函数放在私有部分中。不能直接冲程序中调用这种函数,但是公有方法却可以使用它们。通常,程序员使用私有成员函数来处理不属于公有接口的实现细节。

            不必在类的声明中使用关键字private,因为这是类对象的默认访问控制:

    1. class World
    2. {
    3. float mass;
    4. char name[20];
    5. public
    6. void tellall(void)
    7. };

  • 相关阅读:
    5分钟了解系统架构设计
    NumPy(1)
    06 - ip route和route -n的区别
    java计算机毕业设计ssm易物小店交换系统-二手咸鱼交易系统
    CentOS 7操作系统磁盘配额:
    容器环境下php进程与bash进程树关系
    深入理解神经网络
    【React】组件实例三大属性state、props、refs
    matlab矩阵的输入
    编译原理-总概
  • 原文地址:https://blog.csdn.net/m0_73671341/article/details/133219368