zoukankan      html  css  js  c++  java
  • 我在B站学习 清华大学教授带你学习c++(进阶)类与对象

    B站av11459203的一系列视频,跳过了基础篇直接进入进阶,从此难度开始加大。这里做出一些笔记分享一下。

    我是1.25速度看的。。对应分P 34-36

    对象:现实中对象的模拟,具有属性和行为,对象是类的实例

    类:同一类对象共同属性和行为

    定义对象时,通过构造函数初始化

    删除对象时,通过析构函数释放资源

    面向对象程序设计特点

    抽象:

    对同一类对象的共同属性和行为进行概括,形成类

    首先注意问题的本质及描述,其次是实现过程和细节

    数据抽象:描述某类对象的属性或状态

    代码(方法)抽象:描述对象的共有特征或具有的功能

    抽象的实现:类

    抽象实例 钟表
    数据抽象
    int hour,minute,second
    
    代码(方法)抽象
    setTime(),showTime()
    class Clock{
    public:
        void setTime(int newH,int newM,int newS);
        void showTime();
    private:
        int hour,minute,second;
    };

    封装

    将抽象出的数据,代码封装在一起,形成类

    目的:增强安全性和简化编程,使用者不必了解具体的实现细节而只要通过外部接口,以特定的访问权限,来使用类的成员

    继承

    在已有类的基础上,进行扩展形成新的类

    多态

    同一名称,不同的功能实现方式

    目的:达到行为标识统一,减少程序中标识符的个数

    设计类应该想到什么....

    类型的合法值是什么?

    有什么样的函数和操作符

    对象如何创建和销毁,如何进行初始化和赋值?

    对象作为函数的参数如何以值传递?

    谁来使用类的对象成员?

    类定义的语法形式

    1 public:
    2     void setTime(int newH,int newM,int newS);
    3     void showTime();
    4 private:
    5     int hour=0,minute=0,second=0;//成为类内初始值

    公有成员

    是类与外部的接口,任何外部函数都可以访问。

    私有成员

    只允许本类的函数访问,而类外部的任何函数不能访问

    在类名称开头声明则默认为private(可以不写)

    保护成员

    不在这里介绍

    对象定义语法 类名 对象名;

    从类外访问成员使用“对象名.成员名”方式访问public成员

    类的成员函数

    在类中声明函数原型

    可以在类外给出函数体的实现,并在函数名前使用类名加以限定

    也可以在类中给出函数体,形成内联成员函数(见下图)

    允许声明重载函数和带默认参数值的函数

  • 相关阅读:
    CentOS7 搭建php环境
    多tomcat服务和nginx负载均衡配置
    linux grep命令
    centos7 远程连接其他服务器redis
    centos7 远程连接其他服务器mysql
    关于结构体对齐
    c语言打印一个整数的二进制形式
    c语言判断一个数是否为偶数
    vim的窗口切换
    pow(x,y)函数的实现算法(递归函数)
  • 原文地址:https://www.cnblogs.com/yinghualuowu/p/8492662.html
Copyright © 2011-2022 走看看