C++ 基础实战教程 , 从小白到大牛这个就够了!

2,222 阅读6分钟

C++ 不仅能兼容 C 语言,并且还继承了 C 语言的运行速度,因此在许多大型项目中都可以看到 C++ 的身影。封装、继承、多态、模板作为 C++ 的重要特性。掌握封装、继承、多态、模板对提高开发效率有着很明显的提升。

今天给大家的分享,主要针对封装、继承、多态、模板这 4 个特性作为基础进行讲解,这都是开发中的宝贵经验,希望大家多多支持小编。

适合人群

  • 对 C 语言或者 C++ 有基础知识的读者
  • 想要在 C++ 继续深入学习的读者
  • 想进入 C++ 实战的读者

只要有一点启发,那就是一个重大的提升,本文章也许就是你突破瓶颈的机会,不论你是准备进军 C++ 开发的准程序员还是混迹职场的C++ 开发程序员,都可以深入学习!

**【文章福利】:**小编推荐自己的C语言/C++交流群:836880131!整理了一些个人觉得比较好的学习书籍、视频资料共享在群文件里面,有需要的可以自行添加哦!~

认识类与对象

知识点

  • 认识类与对象
  • 内联函数
  • string 类
  • 类的定义与实例化

类: 在面向对象编程中是一种面向对象计算机编程语言的构造,是创建对象的蓝图,描述了所创建的对象共同的属性和方法。

对象: 通过类创建出对象,又称实例化对象。

深入理解类

类是 C++ 的核心特性,在 C++ 的世界中,可以将所有事物都看作为一个对象,将对象进行封装之后成为一个类,通常被称为用户定义类型。

例如:可以将猫、狗、鸟、桌子、学生、人、三角形、矩形等都封装为一个类,只要在实际编程中用到的都可以抽象封装为一个类。

C++ 相关概念

自定义类

假设最近在做一个学校管理系统的项目,首先想到可以将学生定义为一个类,然后发现可以在学生类的基础上再抽象出一个人类的对象,如果需要用到学生的学科,可以进一步将学科也封装为一个,还可以封装文件操作类,数据库操作类等等。

类定义注意事项:

  • 定义一个类时,需要使用关键字 class 来进行修饰。
  • 一个简单的类可以没有构造函数和析构函数,但是系统自动生成一个默认的构造函数和析构函数。
  • 在类中使用关键字 public 、 private 和 protected 来限制数据成员和成员函数,一般使用 public 和 private 来修饰数据成员和成员函数。
  • 一般将数据成员封装在 private 关键字下,不让用户直接访问数据成员,而是通过成员函数来进行访问。
  • 在类的最后(大括号后)必须要有一个逗号,勿忘。

实例化对象

实例化对象有两种方式,一种是在栈上实例化,另一种是在堆上实例化。

实例化对象注意事项:

  • 在栈上实例化的对象,超出定义域对象资源会自动被系统回收。
  • 在堆上实例化的对象,最后需要使用 delete 关键字来释放内存,否则会造成内存泄漏。
  • 使用栈实例化的对象使用 “.” 来访问数据成员或成员函数,在堆上实例化的对象使用 “->” 来访问数据成员或成员函数。
  • 释放完内存后将对象置空,防止野指针。

string 类

C++ 标准库:前人开发时编写的类,并被收录成为通用的标准类,之后的人开发时可以直接使用,避免重复造轮子。string 类是开发时经常会使用到的一个类。

string 类是 C++ 标准库中的字符串类,专用于字符串操作,接下来介绍一下如何使用 string 类。

string 常用操作

内联函数

官方定义:内联函数又是称作 “在线函数” 或者 “编译时期展开函数” 的一种编程语言结构,用来建议编译器对一些特殊函数进行内联扩展;也就是说建议编译器将制定的函数体插入并取代每一次调用该函数的地方,从而节省每次调用函数带来的额外时间开支。

类的定义与实例化

类内定义

类内定义即在类中实现成员函数。

类内定义的方式编译器会自动尝试将成员函数作为内联函数进行编译,如果成员函数比较复杂,编译器将不会作为内联函数进行编译。

在实际开发过程中需要考虑到程序的架构问题,类内定义适用于一个相对比较简单的程序,考虑到开发时的方便性和时间成本,类外定义是实际程序开发中常用的方法。

类外定义

类外定义有两种方式:

  • 同文件类外定义。
  • 分文件类外定义。

同文件类外定义就是将类的成员函数定义在类之外的地方,同时类的成员函数使用类作用域来进行定义。在实际项目开发中,类不是很复杂时可以使用该方法,类比较复杂时不推荐使用。

分文件定义类就是将类的定义放在 xxx.h 头文件中,而类的成员函数实现放在 xxx.cpp 文件中。这种做法是做项目时推荐使用的方法,因为这样将类的定义和成员函数分开后,在开发时很容易能够查找到对应的定义和成员函数。

一般情况下文件名和类名相同,便于开发时类管理。

知识点总结

  • 深入认识类与对象并讲解 C++ 相关概念。
  • 如何使用 string 类。
  • 普通内联函数与类内联函数以及编译器对内联函数的处理。
  • 学习类内定义与类外定义,开发时常使用分文件类外定义的方法。
  • main 函数的返回值为 int 类型,注意不要写成 void 类型。

文章福利

对于觉得学习资料难找的读者,可以加小编的C语言/C++交流群:836880131! 整理了一些个人觉得比较好的学习书籍、视频资料共享在群文件里面,有需要的可以自行添加!~

VS编译器,图形库

C语言相关电子书
C/C++项目实战
C/C++基础视频及笔记