1、C++基本介绍
C++是一种中级编译语言,可用于底层开发,也可以用于上层开发,同时兼容C编程。C++支持面向对象编程,C++和多数语言都有着相似的基本语法,如果你学过其它语言,那么C++会比较好上手。
编程不侧重于语言语法上的技术,数据结构和算法才是我们编写程序主要关心的东西,数据结构就是一个数据,这个数据可以是简单数据和复合数据;而算法则是这个数据的运算规则,最简单的就有加减乘除。对应的,例如C++中有运算符重载。
本文主要介绍C++编程的一些重要的基本语法,是一些需要特别关注的知识点。
2、C++编程环境
进行任何编程,我们最基本都需要一个文本编辑器、编译器和调试器,将这些工具集成的工具叫做集成开发环境(IDE),例如常用的VS2019、Clion、Code::Blocks等。如果是在Linux环境下无图形界面编程,这三个基本工具一般是分开的,例如文本编辑器用Vim/Vi,编译器用G++、调试使用GDB。
3、C++中的数据、指针和内存
计算机编程中,一个数据对应一个内存单元,最基本的内存单位是位,但通常操作内存最小都是以字节为单位,1个字节为8位。
我们编程就是在操作内存单元,在C++中操作内存单元的方式一般都是使用指针,指针是该内存单元的地址。但通常是一个内存块的首地址,而指针的数据类型告诉CPU一次操作多大的内存空间,例如int型的指针一次读写4字节的内存单元,结构体或class型的指针一次读写这个结构体或类大小的内存单元。一个指针的实际值是一个整数值,你可以将任意的整数转为一个指针。
C++程序的内存可分为堆内存和栈内存,栈内存自动申请自动释放,堆内存手动申请手动释放(C++可以使用一些辅助类进行智能释放)。堆内存就是使用malloc和new申请的内存,栈内存储存其它的变量,如全局变量、局部变量、静态变量等。
4、C++中的auto、static、extern
Auto用于声明一个变量,并自动判断该变量的类型,应该适当使用,例如声明容器的迭代器的时候可以使用,其它情况则不建议使用。
Static声明的函数和变量,有两个特点:1)这些函数和变量只在当前文件中有效,2)声明的变量在程序的整个生命周期都存在。
Extern声明的一个变量和函数,表示这些变量和函数的实际定义在其它地方,用于引用其它地方的变量和函数。
5、C++中的引用
引用是另一个变量的别名,所以是不存在空引用的,一个引用必须连接到一个内存空间。引用在创建的时候就需要初始化了,并且引用不能重新赋值。
一般来说,传递栈上的变量时都可以使用引用,而在堆上则使用指针。当然也可以使用引用操作堆变量,他们的主要区别是:使用指针传递变量需要复制一个指针,在堆上使用引用传递变量可以使用指针引用,这样不用复制而占用一些内存空间。
6、C++的I/O操作
【C++基本语法和知识点总结合集】I/O操作分为输入操作和输出操作,输入操作是读取数据、输出数据是写出数据。C++提供三个主要头文件用于I/O操作:<
iostream>
:提供cin、cout、cerr、clog(标准输入、输出、错误、日志),<
iomanip>
:提供参数化流操作,<
fstream>
:该文件为用户控制的文件处理声明服务。
推荐阅读
- 如何在Angular中使用jQuery(用法代码实例)
- C++面向对象编程知识点合集总结和解释
- (服务运维)Linux内核防火墙Netfilter和iptables用户工具
- WGCLOUD的web ssh是做什么用的
- 使用Windows的KVM虚拟机与CentOS宿主机互通
- MacBook安装rar解压工具
- rsync使用介绍
- docker和docker-compose使用过程中的疑难杂症踩坑合集
- 开启MFA多因素后,AzureCli如何自动化登录