C++基础-02

本文概述了C++的基础知识,包括C++的起源、面向对象编程的四大特性(封装、抽象、继承、多态)、C++标准库的组成部分,以及C++的基本语法和注释。面向对象编程是C++的核心,它强调对象的状态和行为,通过封装、继承和多态实现代码复用和模块化设计。标准库和标准模板库提供了丰富的功能,增强了C++的实用性。
摘要由CSDN通过智能技术生成

C++基础-02

`


前言

本系列主要的目的是找工作,要记!里面的内容大部分来源于网络,以及自己的一些理解和总结!如果有错误的地方,希望各位大佬指正!
(听说点赞收藏+关注的人都会进大厂噢!加油!!)
参考 传送门


一、C++ 简介

C++ 是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言,支持过程化编程、面向对象编程和泛型编程。

C++ 被认为是一种中级语言,它综合了高级语言和低级语言的特点。

C++ 是由 Bjarne Stroustrup 于 1979 年在新泽西州美利山贝尔实验室开始设计开发的。C++ 进一步扩充和完善了 C 语言,最初命名为带类的C,后来在 1983 年更名为 C++。

C++ 是 C 的一个超集,事实上,任何合法的 C 程序都是合法的 C++ 程序。

注意:使用静态类型的编程语言是在编译时执行类型检查,而不是在运行时执行类型检查。

二、面向对象程序设计

C++ 完全支持面向对象的程序设计,包括面向对象开发的四大特性:

  • 封装:把一个对象的属性私有化,即隐藏对象的属性和实现细节,仅对外公开接口,控制程序对类属性的读取和修改。封装的目的是增强安全性和简化编程,使用者不必了解具体的实现细节,而只是通过外部接口以及特定的访问权限来使用类的成员。
    (我们可以通过封装使一部分成员充当类与外部的接口,而将其它的成员隐藏起来,这样就限制了外部对成员的访问,也使不同类之间的相互影响度降低)
class Animal
{
public: //这就是公共成员,外部的接口
    void SetAnimalName(string strname);
    void ShowAnimalName();
private: //这是私有成员,外部是无法访问到的
    string m_strName;
};
  • 抽象:抽象是指将一类对象的共同特征总结出来构造类的过程,抽象包括两个方面,一是数据抽象(关注于目标的特性信息),二是过程抽象(关注于目标的功能是什么,而不是功能是怎么实现的)。
  • 继承:即子类继承父类的特征和行为,使得子类具有父类的成员变量和方法。
    多态可以使我们以相同的方式处理不同类型的对象,我们可以使用一段代码处理不同类型的对象,只要他们继承/实现了相同的类型。这样我们没有必要为每一种类型的对象编写相同的逻辑,极大的提高了代码的重用。其实,用简单的一句话来形容就是:多态性,允许将子类类型的指针赋值给父类类型的指针,多态性在C++中是通过虚函数实现的。虚函数就是允许被其子类重新定义的成员函数。而子类重新定义父类虚函数的做法,称为“覆盖”,或者称为“重写”。子类重写父类中虚函数时,即使不用virtual声明,该重载函数也是虚函数。
  • 多态:多态可以使我们以相同的方式处理不同类型的对象,我们可以使用一段代码处理不同类型的对象,只要他们继承/实现了相同的类型。这样我们没有必要为每一种类型的对象编写相同的逻辑,极大的提高了代码的重用。其实,用简单的一句话来形容就是:多态性,允许将子类类型的指针赋值给父类类型的指针,多态性在C++中是通过虚函数实现的。虚函数就是允许被其子类重新定义的成员函数。而子类重新定义父类虚函数的做法,称为“覆盖”,或者称为“重写”。子类重写父类中虚函数时,即使不用virtual声明,该重载函数也是虚函数。

三、标准库

标准的 C++ 由三个重要部分组成:

  • 核心语言,提供了所有构件块,包括变量、数据类型和常量,等等。
  • C++ 标准库,提供了大量的函数,用于操作文件、字符串等。
  • 标准模板库(STL),提供了大量的方法,用于操作数据结构等。

四、 C++基本语法

C++ 程序可以定义为对象的集合,这些对象通过调用彼此的方法进行交互。现在让我们简要地看一下什么是类、对象,方法、即时变量。

  • 对象 : 对象具有状态和行为。例如:一只狗的状态 - 颜色、名称、品种,行为 - 摇动、叫唤、吃。对象是类的实例
  • 类 : 类可以定义为描述对象行为/状态的模板/蓝图。(抽象)
  • 方法 : 从基本上说,一个方法表示一种行为。一个类可以包含多个方法。可以在方法中写入逻辑、操作数据以及执行所有的动作。
  • 即时变量 : 每个对象都有其独特的即时变量。对象的状态是由这些即时变量的值创建的。

五、C++注释

C++ 注释一般有两种:

  • // - 一般用于单行注释。

  • /* … */ - 一般用于多行注释。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小杜在学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值