当前位置:首页 > 经验 >

c++展示(c+操作教程)

来源:原点资讯(www.yd166.com)时间:2022-11-01 07:58:19作者:YD166手机阅读>>

二、std::optional 更优雅地编写可能无返回结果的函数用法:

使用std::optional<T>来修饰函数返回值,表明这个函数可能不会返回值,T代表原有的返回类型。具体使用方法见示例函数TestOptionalInt:

c++展示,c+操作教程(5)

用途:

过去当我们编写一个获取目标值的函数时,如果这个函数在某些情况下不能返回目标值,那么我们就必须通过两个参数去获得目标值:一个参数来表明是否存在目标值,另一个参数返回目标值;或者是在函数无返回值时抛出异常。下面以FindUserName函数来展示C 17之前的几种实现途径。

c++展示,c+操作教程(6)

引入C 17的std::optional<T>,我们可以更优雅更安全的编写FindUserName函数。

c++展示,c+操作教程(7)

三、std::string_view 字符串视图用法:

C 17引入的std::string_view来协助程序员更高效的使用只读字符串,初始化std::string_view时需要传入已有的字符串。作为函数参数时只使用值拷贝形式,即std::string_view;不要引用字符串视图,即:std::string_view&。

std::string_view本质上是持有一个字符串的指针,因此需要保证:①被持有的字符串生命周期比std::string_view变量长;②被持有的字符串在std::string_view变量生命周期结束之前,保持不变。

用途:

当遇到需要使用只读字符串,尤其是传入只读字符串作为函数参数时,优先使用std::string_view。在以下两个场景使用string_view比使用 const string&更好。

适用场景1:可能传入只读C风格字符串参数时

C风格字符串是指: const char* str = "C风格字符串"

char* str = "C风格字符串"

char[] str_array = "C风格字符串"

以一个字符串打印函数StringDisplay为例,下面的代码是常规的编写方法。

c++展示,c+操作教程(8)

栏目热文

c+题库(c+答案哪里找)

c+题库(c+答案哪里找)

题库来源:安全生产模拟考试一点通公众号小程序安全生产模拟考试一点通:安全员-C证新版试题是安全生产模拟考试一点通生成的,...

2022-11-01 08:02:31查看全文 >>

c++标准库(c+课程推荐)

c++标准库(c+课程推荐)

C 标准库可以分为两部分:标准函数库: 这个库是由通用的、独立的、不属于任何类的函数组成的。函数库继承自 C 语言。...

2022-11-01 08:31:09查看全文 >>

大学c+什么意思(大学排名c+是什么意思)

大学c+什么意思(大学排名c+是什么意思)

谁叫你不幸生在中国了?——何祚庥(中国科学院院士)这是一本给非计算机专业的大学生的C语言的书。“我不是学计算机的,为啥要...

2022-11-01 08:19:30查看全文 >>

c+有什么用(c+为什么很少被提及)

c+有什么用(c+为什么很少被提及)

作者: 在过去的50年里,出现了几十种新的语言,他们表现得多么出色?有些在挑战C的统治地位,而其他则想逐渐削弱它。几十年...

2022-11-01 08:05:24查看全文 >>

c+教程(c++教程直播)

c+教程(c++教程直播)

刚刚开始学编程,有什么办法可以快速掌握一门语言?还真有!而且只需要3天的时间,就可以精通C !你需要完成这几步:和你的...

2022-11-01 08:12:39查看全文 >>

c+怎么读(c+编程思想)

c+怎么读(c+编程思想)

概念简介C 这个词在中国大陆的程序员圈子中通常被读做“C加加”,而西方的程序员通常读做“C plus plus”,“C...

2022-11-01 08:08:55查看全文 >>

c+是什么意思(c语言必背代码)

c+是什么意思(c语言必背代码)

前几天写光通信那篇文章的时候,提到了CE、C 、C L波段。很多同学问,之前知道的都是O波段、E波段、C波段、L波段,...

2022-11-01 08:26:17查看全文 >>

c++培训班(c++培训哪个机构好)

c++培训班(c++培训哪个机构好)

C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处...

2022-11-01 08:14:51查看全文 >>

c+算法(c++贪心算法)

c+算法(c++贪心算法)

相信小伙伴们都应该知道,C语言中有有许多经典的算法,这些算法都是许多人的智慧结晶,也是编程中常用的算法,这里面包含了众多...

2022-11-01 08:03:06查看全文 >>

c++教程(c+高级教程)

c++教程(c+高级教程)

我们都知道,C 是一门难学易用的语言。就连他的创始人 Bjarne Stroustrup 都说自己有时候看不懂这门语...

2022-11-01 08:35:55查看全文 >>

文档排行