【c++初阶】C++入门(上)

这篇具有很好参考价值的文章主要介绍了【c++初阶】C++入门(上)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言

✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿
🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟
🌟🌟 追风赶月莫停留 🌟🌟
🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀
🌟🌟 平芜尽处是春山🌟🌟
🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟
🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅

🍑C++关键字

1、auto - 用于声明自动变量,可以由编译器自动推断类型。

2、break - 用于跳出当前循环或switch语句。

3、case - 用于switch语句的一个分支。

4、char - 用于声明字符型变量或函数。

5、class - 用于定义类。

6、const - 用于声明只读变量,即该变量的值不可更改。

7、constexpr - 用于定义编译时常量。

8、continue - 用于跳过循环的当前迭代。

9、default - 用于switch语句中的默认分支。

10、do - 用于do-while循环的循环体。

11、double - 用于声明双精度浮点型变量或函数。

12、else - 用于条件语句,如果条件为假,则执行else块中的代码。

13、enum - 用于声明枚举类型。

14、extern - 用于声明在别处定义的变量或函数。

15、float - 用于声明单精度浮点型变量或函数。

16、for - 用于for循环。

17、goto - 用于无条件跳转到程序中的特定位置。

18、if - 用于条件语句,根据条件的值执行不同的代码块。

19、int - 用于声明整型变量或函数。

20、long - 用于声明长整型变量或函数。

21、namespace - 用于定义命名空间,用于组织和访问相关的类、函数和变量。

22、new - 用于动态分配内存。

23、operator - 用于重载运算符。

24、private - 用于声明类的私有成员。

25、protected - 用于声明类的保护成员。

26、public - 用于声明类的公开成员。

27、register - 建议将变量存储在寄存器中,提高效率。

28、return - 用于从函数返回值。

29、short - 用于声明短整型变量或函数。

30、signed - 用于声明有符号类型变量或函数。

31、sizeof - 用于计算数据类型或对象的大小。

32、static - 用于声明静态变量,分配内存在静态存储区。

33、struct - 用于定义结构体。

34、switch - 用于条件分支语句。

35、template - 用于定义函数或类的模板。

36、this - 指向当前对象的常量指针。

37、throw - 用于抛出异常。

38、true - 布尔类型的真值。

39、try - 用于异常处理,尝试捕获异常。

40、typedef - 用于给数据类型定义别名。

41、typeid - 用于获取表达式的类型信息。

42、typename - 用于模板编程中标示模板参数是一个类型名称。

43、union - 用于定义共用
。。。。。。
目前C++常用的关键字大部分都列出来了,大家不需要一个一个的背,在以后写代码过程中,会一直用,用久了自然就熟悉了。

🍑C++命名空间

🍍命名空间的由来

C++的命名空间(namespace)是C++语言引入的一个特性,其主要目的是为了解决命名冲突和提供代码组织上的便利性。

在C++早期,随着代码库的不断扩大和功能的不断增加,程序员们经常遇到一个问题:不同库中的函数或类可能使用相同的名称。这导致在链接或运行时出现冲突,因为编译器或链接器无法区分哪个名称指的是哪个实体。

为了解决这个问题,C++引入了命名空间的概念。==命名空间是一个封装的命名环境,它可以将相关的类、函数和对象组织在一起,并给它们一个唯一的标识符。==这样,即使不同的库中有相同名称的实体,只要它们位于不同的命名空间中,就可以避免命名冲突。

命名空间的由来可以追溯到编程语言和软件开发的演进过程。随着软件规模的扩大和复杂性的增加,代码组织和管理的需求变得越来越重要。命名空间作为一种代码组织工具,使得代码更加清晰、易于理解和维护。

🍍命名空间的用法

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言
首先C++代码编写需要写这个头文件,也就是上图所示。

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言
上图中就是我们学习的C++第一个命名空间,也是最重要的一个命名空间。std是一个C++的重要的库的名称。

using是C++中的关键字主要作用是简化代码,提高代码的可读和维护性,通过声明命名空间和使用别名,我们可以使代码更加清晰,简洁,减少冗余和错误。

namespace也是C++中的关键字用于定义命名空间,用于组织和访问相关的类、函数和变量

我们自己可以定义一个命名空间:

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言
这个名字叫Computer的空间包含了加法和交换函数。

命名空间的名称可以自己随意定,符合变量的定义规则就行。

接下来我们看看用法,平常我们在c语言中直接调用这个函数就可以用了,而现在有了这个命名空间:

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言

Add哪里报错了:【c++初阶】C++入门(上),C++,c++,开发语言,编程语言

执行程序时,系统没有找到Add()这个函数。

来看命名空间是怎么用的:
【c++初阶】C++入门(上),C++,c++,开发语言,编程语言

从图中可以看出,是在Add前面加了两个冒号(::)再加上命名空间的名称(Computer)。

C++中,:: 是一个作用域解析运算符,它用于指定一个特定的标识符(例如变量、函数、类型等)属于哪个命名空间或类。

在这里::是指定命名空间中的元素,元素包括命名空间里的函数和各种变量。

也就是说当你想要访问命名空间中的变量和函数时,都需要这么去写。

而在开头中 :
【c++初阶】C++入门(上),C++,c++,开发语言,编程语言

在这里我们可以利用Computer给大家试试这个:

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言
在这幅图中大家可以明显看到,原本我们是要利用::,才能使用Add函数,而现在,当有了
using namespace Computer,现在就可以使用Add函数了。

现在大家也应该能猜到了“using namespace Compputer;”这串代码的意思了吧。

这串代码就是打开Computer这个命名空间的意思。通俗点的意思,就是Computer是一片封闭的空间,得要有钥匙,你才能进到这个空间,而到using namespace Computer就是把这片封闭的空间公开了,任何人都可以进去。大概就是这个意思,大家可以这样简单的理解。

而“using namespace std;”就是打开std这片空间。std是C++重要的一个库,只要编写C++代码就要写上这片代码。

当然std是一个重要的库,也包含了很多函数和关键字。当你使用"using namespace std"打开这个库,这个时候你自己定义的函数或关键字不能与库里面相同,否则会报错,当然供我们基础的学习碰到的概率可以微乎不计,以后做大项目时大家多注意点就行了。

🍑C++输入和输出

🍍输入

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言

编写C++程序是必须要写#include头文件名的还有展开std这个库,图中cin和cout也在std库中。

C++的输入cin和C语言中输入scanf还是有很大区别的,也变得更方便了。

🍍输出

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言
【c++初阶】C++入门(上),C++,c++,开发语言,编程语言

大家应该可以看出,cout是C++中的输出对象和C语言中printf还是有了很大的提升,变得更方便了。其中在这里endl其实是‘\n’的作用,就是断行的意思。

总结:在C++中,cout 和 cin 是两个非常重要的对象,它们分别属于 std 命名空间中的 ostream 和 istream 类。这两个对象主要用于控制台的输入输出操作,并且可以自动识别变量的类型。

🍑C++缺省参数

🍍缺省参数的定义

在C++中,缺省参数是指在函数声明或定义时给函数的某些参数指定默认值。当调用这个函数时,如果调用者没有提供对应参数的实参,编译器将自动使用这些默认值。这有助于简化函数调用,并为函数提供更大的灵活性。

缺省参数可以在函数声明时指定,也可以在函数定义时指定,但通常推荐在函数声明时指定,以保持接口的一致性。

注意:需要注意的是,一旦某个参数有了缺省值,它后面的所有参数都必须有缺省值。这是因为在函数调用时,编译器从左到右匹配参数和实参,如果中间的某个参数使用了缺省值,那么它后面的参数也必须能够匹配上,否则会导致编译错误。

🍍缺省参数分类

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言

上面就是正确的缺省函数的写法。

给大家看一下错误的缺省函数的写法:
【c++初阶】C++入门(上),C++,c++,开发语言,编程语言
【c++初阶】C++入门(上),C++,c++,开发语言,编程语言

在C++中缺省值只能从左边往右看,而不能从右往左看。

缺省值的规则:一旦某个参数有了缺省值,它后面的所有参数都必须有缺省值。这是因为在函数调用时,编译器从左到右匹配参数和实参,如果中间的某个参数使用了缺省值,那么它后面的参数也必须能够匹配上,否则会导致编译错误。

🍍缺省参数的用法

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言
第一个函数没有实参,传参时使用参数的默认值

第二个函数有实参,传参时就使用指定的实参

大家应该可以从图中看明白。

接下来就是半缺省值:

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言
如图,中间还是不能空着,不符合缺省函数书写的规则。

🍑C++重载

🍍重载的定义

在C++中,函数重载是指使用相同的函数名定义多个函数,但它们的参数列表(参数的类型、个数或顺序)必须不同。这样,编译器可以根据提供的参数来区分应该调用哪个函数。函数重载允许我们以更自然和直观的方式使用函数名,同时减少了因函数命名不同而带来的混淆。

🍍重载的规则

下面是函数重载的一些基本规则:

函数名相同:重载的函数必须具有相同的名称。

参数列表不同:重载的函数必须至少有一个参数的类型、个数或顺序不同。

返回类型不同不是重载的依据:仅仅返回类型不同不足以区分两个函数重载。

与函数模板的区别:函数模板允许对不同类型的参数进行相同的操作,而函数重载则是针对具有不同参 数列表的同名函数。

🍍重载的分类

#include <iostream>
using namespace std;

// 函数重载示例

// 第一个重载版本:接受一个字符串参数并输出它
void add(char message) 
{
    cout << message << endl;
}

// 第二个重载版本:接受两个整数参数
int add(int a, int b) 
{
    return a + b;
}

// 第三个重载版本:接受两个浮点数参数
double add(double a, double b) 
{
    return a + b;
}

// 第四个重载版本:接受一个整数和一个浮点数参数
double add(int a, double b) 
{
    return a + b;
}


int main() 
{
    add('a'); // 调用第一个重载版本
    int cur1 = add(2, 3); // 调用第二个重载版本
    double cur2 = add(2.5, 3.5); // 调用第三个重载版本
    double cur3 = add(2, 3.5); // 调用第四个重载版本
    
    cout << cur1 << endl;
    cout << cur2 << endl;
    cout << cur3 << endl;

    return 0;
}

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言

这里介绍了4种重载的情况,并且成功的运行了。当然重载的情况不仅仅只有这4种,根据实际情况而定。

只是想让大家明白函数重载是C++中的一个重要概念,与C语言有很大的区别,C语言中是不支持函数重载的,C++中却支持。

🍍C++支持重载的原因

主要有4个原因:
提高代码可读性:通过函数重载,我们可以使用相同的函数名来表示一系列相关但参数不同的操作。这有助于减少因不同操作而使用不同函数名所带来的命名混乱,使得代码更易于理解和维护。

增加语言表现力:函数重载允许程序员以更自然和直观的方式编写代码。例如,我们可以使用add函数来处理整数相加和浮点数相加,而无需为每种类型编写一个具有不同名称的函数。这使得代码更易于编写和阅读。

简化函数调用:当函数具有多个重载版本时,程序员可以根据需要传递不同类型的参数来调用相应的函数。这减少了编写代码时需要考虑的复杂性,使得函数调用更加简洁和直观。

类型安全:函数重载通过编译器在编译时检查参数类型来确保类型安全。如果传递给函数的参数类型与任何重载版本都不匹配,编译器将报错,从而防止了潜在的类型错误。

支持泛型编程思想:函数重载可以被视为泛型编程的一种简单形式。虽然它不如模板那样灵活和强大,但在某些情况下,函数重载提供了一种简洁的方式来处理多种数据类型。

总之,C++支持函数重载是为了提高代码的可读性、增强语言表现力、简化函数调用、确保类型安全以及支持泛型编程思想。这使得C++成为一种强大而灵活的编程语言,能够应对各种复杂的编程任务。

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言

【c++初阶】C++入门(上),C++,c++,开发语言,编程语言文章来源地址https://www.toymoban.com/news/detail-842677.html

到了这里,关于【c++初阶】C++入门(上)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 编程语言比拼之Java VS C++

    学Java还是C++?   Java和C++都是非常受欢迎的编程语言,各有各的优势和适用场景。以下是对它们的简要比较: 性能:C++通常被认为是一种更高效的编程语言,适用于对性能要求较高的应用程序,如游戏开发、嵌入式系统和高频交易等。C++具有更接近底层的控制能力,允许开发

    2024年02月13日
    浏览(42)
  • C#编程语言的优势与C++对比

           C#语言是由 C/C++演变而来的,是微软推出的一种基于.NET框架的、面向对象的高级编程语言。以.NET框架类库作为基础,拥有类似Visual Basic的快速开发能力。简单易学,入门超快,减少了烦人的指针,有统一的操作符/修饰符/运算符,使用起来极其舒心。         对于

    2024年02月09日
    浏览(40)
  • HOJ 系统常用功能介绍 OJ部署快速入门 c++ python 编程语言在线自动评测判题 信息奥赛一本通 USACO GESP 洛谷 蓝桥 CSP NOIP 蓝桥等考题库

    技术支持微  makytony   终身更新维护 功能类似洛谷和信息奥赛一本通,支持CSP复赛中的freopen文件输入输出方式提交,模拟真实考试环境,防止出现 本地  AC 比赛  WA  PA TLE  爆零 的惨剧。 组织比赛作业,创建题目、查看用户提交代码、下载评测数据等都没限制。 约  328

    2024年02月07日
    浏览(50)
  • [编程语言][C++][Qt]单独添加UI文件

    不知什么原因,Qt Creator并不是很完美很智能。当先写好界面类的头文件和源代码文件后,我们再添加用于可视化界面设计的UI文件时,会出现一些问题。 当使用CMake管理项目时,CMake会读取 CMakeLists.txt 文件来确定各种项目设置。需要把 MainWindow.ui 包含进项目时,在 CMakeLists.

    2024年02月07日
    浏览(43)
  • APP开发入门:了解主流的编程语言

    在过去的几年里,有许多程序员开始学习和使用编程语言。这其中包括C、C++、 Java和 Python。尽管有许多语言可供选择,但大多数程序员都会选择最容易学习的编程语言。 如今,有很多编程语言供选择。程序员们在学习这些语言时可以自由地选择他们喜欢的方式,因为他们的

    2024年02月15日
    浏览(47)
  • 开发语言工具编程系统化教程入门和初级专辑课程上线

    开发语言工具编程系统化教程入门和初级专辑课程上线 学习编程捷径:(不论是正在学习编程的大学生,还是IT人士或者是编程爱好者,在学习编程的过程中用正确的学习方法 可以达到事半功倍的效果。对于初学者,可以通过下面的方法学习编程,通过对成百上千个实例练习

    2024年02月08日
    浏览(52)
  • 初学编程入门基础教学视频,中文编程开发语言工具箱之豪华编辑构件,免费版中文编程软件下载

    初学编程入门基础教学视频,中文编程开发语言工具箱之豪华编辑构件,免费版中文编程软件下载  构件的其中一个属性、方法,查找内容,替换内容。 构件工具箱非常丰富,其中该构件在 文本件构件板菜单下。 编程系统化课程总目录及明细,零基础学中文编程视频教程,

    2024年02月07日
    浏览(75)
  • 编程语言:微软 Azure CTO 表示,是时候停止在新项目中使用 C 和 C++

    Azure CTO Mark Russinovich 说,业界应该将 C 和 C++ 语言视为“已弃用”。 Windows 11 22H2:如何获得微软最新的操作系统更新以及接下来会发生什么 Microsoft Azure 的首席技术官 Mark Russinovich 表示,出于安全性和可靠性的考虑,开发人员应避免在新项目中使用 C 或 C++ 编程语言,而应使用

    2024年02月06日
    浏览(53)
  • 入门Python编程:了解计算机语言、Python介绍和开发环境搭建

    计算机语言是用来控制计算机行为的一种语言,通过它可以告诉计算机该做什么。计算机语言和人类语言在本质上没有太大区别,只是交流的对象不同。 计算机语言发展经历了三个阶段: 1. 机器语言 机器语言使用二进制编码来编写程序。 执行效率高,但编写起来麻烦。 2

    2024年02月09日
    浏览(65)
  • 中文编程开发语言工具系统化教程零基础入门篇和初级1专辑课程已经上线,可以进入轻松学编程

    中文编程开发语言工具系统化教程零基础入门篇和初级1专辑课程已经上线,可以进入轻松学编程 学习编程捷径:(不论是正在学习编程的大学生,还是IT人士或者是编程爱好者,在学习编程的过程中用正确的学习方法 可以达到事半功倍的效果。对于初学者,可以通过下面的

    2024年02月08日
    浏览(78)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包