Qt专栏之C++预习篇(一)

Qt专栏之C++预习篇(一)

    • C与C++的不同点
      • 编程范式的不同:
      • 规范的不同
    • C++笔记速背点

用Qt写上位机软件真的超级方便,小小编在这边分享一些如何从零开始通过Qt来制作上位机软件。

我们预习回顾下Qt使用的编程语言,如果有C++基础的话可以直接看《Qt专栏之Qt初识(五)》,本文旨在C语言基础上阐述C++的不同点基本概念速记

C与C++的不同点

编程范式的不同:

C++ 同时支持全部的四种编程范式,分别是 :

  • 面向过程

  • 面向对象:(抽象、封装、继承、多态性)

    • 面向对象的思想

      是什么:客观事件是由各种各样的对象构成的,每种对象都有各自的属性行为,不同对象之间的相互作用和联系构成了不同的系统;

      为什么:为了解决结构化程序随着软件规模越来越所暴露出的缺陷问题:在结构化方法中,数据和对该数据操作的函数在组织形式上的分离是造成数据不安全和程序不易维护的主要原因;

      怎么做:提出了一种将数据和对其操作的函数封装成一个整体进行操作的程序设计方法。

  • 泛型编程

  • 函数式编程

规范的不同

C++中的一些定义从C中拓展:

  • 字符串:C++的字符串与C风格不同,字符串结尾没有结束标志’\0’
  • 结构体:在C++中struct既可以包含成员变量,也可以包含成员函数

C++笔记速背点

基本概念:

  • 对象:实体或事物

  • :类是创建对象实例的模板,对象则是类的一个实例,如一个个不同的“人”是人类的实例

  • 消息:在面向对象的程序中,程序执行是靠对象之间传递消息来完成的

  • 方法:对某个对象接受了某一消息后所采取的一系列操作的描述,实际上就是指与现实世界中的行为操作相对应的函数

  • 继承机制:(单继承和多继承(虚继承))注意public、protected、private区别:

    基类成员在派生类中的访问权限不得高于继承方式中指定的权限,也就是说,继承方式中的public、protected、private是用来指明基类成员在派生类中的最高访问权限的(可以通过using来改变访问权限)。

    定义一个基类(假设为一个快退休的富豪):

    class RichMan
    {
            
    public:
    RichMan(); 
    ~RichMan();
    int m_company;    
    private:
    int m_money;
    int m_car;
    protected:
    int m_house;
    
    };
    
    • 公司是public的,那么他自己(基类),创业伙伴(友元),儿子(子类),其他人(外部)都可以访问;
    • 钱和车子是private的,自己(基类),创业伙伴(友元)可以访问。儿子(子类)和外人都不给开;
    • 房子是protected的,自己(基类),创业伙伴(友元)可以访问,儿子(子类)也可以访问,外人是不可以访问。
  • 多态性:指同一个操作作用于不同的对象会产生不同的响应

    分为静态(编译时)多态性和动态(运行时)多态性

    • 函数重载和运算符重载属于静态多态性

    运算符重载定义形式:

    类名 operator 运算符(参数表)

    • 虚函数的多态性为动态多态性(虚函数表)

    虚函数定义形式:

    virtual 类型说明符 函数名(参数表)

如果在基类中某个成员函数被声明为虚函数,则意味该成员函数在派生类中可能有其他的实现方法

  • this指针:隐含于每一个类的成员函数,指向正在被某个成员函数操作的对象

    如果某个对象调用一个成员函数,则编译程序首先将这个对象的地址赋给this指针,因此可以用*this来标识调用该成员函数的对象

this指针在成员函数的开始执行前构造的,在成员的执行结束后清除

  • 抽象类纯虚函数):抽象类是一种包含纯虚函数的特殊类,通过抽象类可以实现多态性。

关注微信公众号『设计至纯』,查看更多原创内容,和小小编进行灵魂交流O(∩_∩)O欢迎疯狂点赞、分享、收藏、点赞、在看、点赞。 ^ o ^

Qt专栏之C++预习篇(一)_第1张图片

你可能感兴趣的:(Qt,qt)