C++认识

本文深入探讨C++中指针的使用与const限定符的关系,包括指向常量的指针、常量指针及指向常量的常量指针的概念与应用。同时,介绍了泛型算法在数组上的运用,如反转、复制、排序和检索等操作。

知识点很零碎,这里先讲解下指针使用const限定符

const限定符

用const限定符强制改变访问权限

  • 指向常量的指针
    指向常量的指针是在非常量指针声明前面使用const
 const.int *p

解析:*p是常量,不能作为某个对象的表达式进行操作,这样就限制了“*p”的操作,所以称为纸箱常量的指针。const修饰int。

  • 常量指针
    把const限定符放在*号的右边,使指针本身成为一个const指针。
int x=5;
int*const p=&x;
  • 指向常量的常量指针
    声明指针和指向的对象都不能改动,这时必须要初始化指针
 int x=2;
 const int*const p=&x;

解析:*p和p都是常量,都不能作为左值(某个对象的表达式),这种指针限制“&”和“ * ”运算符,实际应用中很少使用。

点滴
  • 扩展名
    文件扩展名为.cpp;
    运行文件.exe;
    头文件扩展名:.h;
  • 输入输出对象
    输入:当程序执行键盘输入时,可以使用提取操作符“>>”从cin输入流中提取字符
    eg:"cin >> a.x;"用来从键盘获取输入数据给a.x
    输出:当程序需要在屏幕上显示输出时,使用插入符“<<”向cout输出流中插入字符
    eg:“cout <<“we”; ”用来向屏幕输出显示信息“we”
  • C++使用变量和函数基本规则:先声明后使用,变量也可以边声明边使用,但必须声明。
  • 预处理语句有三种:宏定义,文件包含和条件编译。
  • 标识符
    定义:表示变量名,符号变量名、函数名、数组名、文件名的字符串序列-名字
    命名规则:开头:字母,下划线;后边:字母,数字,下划线,注:第一个字符不能是数字
    区分大小写, 不能使用关键字
  • 泛型算法应用于普通数组
    关键字:反转:reverse
    复制:copy,reverse_cope(逆向复制)
    排序:sort(默认升幂,尾部加greate()为降幂)
    检索:find
    输出:copy(尾部必须加ostream iterator(cout,“字符串”))
    dec十进制,oct八进制,hex十六进制,endl回车换行
### C++ 编程语言简介 C++ 是一种通用编程语言,最初作为 C 语言的增强而开发,并引入了面向对象编程的概念。它由贝尔实验室的 Bjarne Stroustrup 于 1983 年创建,是一种命令式、编译型语言,适用于系统和应用程序编程[^2]。 作为一种高级语言,C++ 的设计使得编写程序更加直观和高效,因为它接近自然语言,并且需要较少的指令来完成任务[^4]。C++ 不仅支持传统的过程化编程,还支持基于对象的编程以及面向对象的编程(OOP),允许使用类和对象进行开发,并利用继承和多态等特性[^3]。 ### C++ 的基本概念 C++ 提供了许多功能,这些功能旨在执行特定代码块或命令,而不是将代码写入逻辑中。它是专门为那些对复杂算法感兴趣的人而设计的编程语言之一[^1]。 - **面向对象编程**:这是 C++ 的核心特征之一,它允许开发者定义类和对象,以及它们的方法和属性。这种编程范式促进了模块化软件开发,提高了代码的可重用性和维护性[^2]。 - **模板**:C++ 模板是泛型编程的基础,它允许编写能够处理任何数据类型的通用代码,从而提高代码的灵活性和复用性[^2]。 - **标准模板库 (STL)**:这是一个容器和算法的集合,用于简化常用数据结构的操作,如向量、列表、映射等,以及排序、搜索等常见操作[^2]。 - **异常处理**:C++ 提供了异常处理机制,这有助于构建健壮的应用程序,能够优雅地处理运行时错误和其他异常情况。 - **低级系统级编程支持**:除了高级特性外,C++ 还保留了直接访问硬件的能力,使其常适合操作系统、设备驱动程序和其他底层系统的开发。 - **链接器的作用**:在 C++ 程序开发过程中,链接器是一个重要的工具,它负责将编译后的机器码与 C++ 库中的代码合并,以便提供额外的功能,比如数学运算或文件输入/输出[^5]。 通过上述介绍可以看出,C++ 是一种强大且灵活的语言,既适合于高性能计算环境下的系统编程,也适用于需要复杂用户界面的桌面应用开发。此外,由于其庞大的社区支持和丰富的学习资源,对于新手来说也是一个很好的起点。 ```cpp // 示例:一个简单的 C++ 程序,演示如何打印消息到控制台 #include <iostream> // 包含输入输出流库头文件 int main() { std::cout << "Hello, World!" << std::endl; // 输出 Hello, World! 到控制台 return 0; // 返回 0 表示程序成功结束 } ```
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值