![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
文章平均质量分 81
C/C++实战
tinygyro
在字节的天空滑过自己的比特。
展开
-
嵌入式开发也可以用C++?
2019年,曾对嵌入式项目中的编程语言做过一个调查。其中,C语言以56%的占比稳居第一,C++以23%紧随其后。手头的嵌入式开发项目也是用的C++,于是想总结一下嵌入式中C++的使用心得。在嵌入式开发中,按照应用领域可以简单划分为:单片机 MCU,Linux 驱动/应用。在嵌入式Linux开发中,C++已经是绝对的应用层主力之一。本文所针对的应用领域主要是单片机MCU开发。原创 2022-11-27 11:41:29 · 4693 阅读 · 0 评论 -
C语言链表—实战篇
本文为《C语言链表—基础篇》的姊妹篇,主要完成链表的实现。原创 2022-08-27 23:19:43 · 578 阅读 · 0 评论 -
C语言链表—理论篇
在工作中发现,许多有问题的程序,究其原因都是在设计之时缺乏对数据表示的深入的思考:一个不经意的变量使用,一个本可以复用却新写的函数,一个性能不佳但是可以快速实现的逻辑等等。......原创 2022-08-16 21:37:26 · 363 阅读 · 0 评论 -
C++ 语法篇之 Inline函数
1. 函数调用的开销Inline函数是一种特殊的函数,在引入Inline之前,想再回顾一下函数的调用操作。主要操作如下:将参数推到堆栈。 将返回地址推到堆栈中。 在被调用函数中,准备函数的返回值。 将调用函数时推入堆栈的参数和返回地址推出。Inline函数通过将代码插入到执行出,从而减少了参数压入堆栈和弹出等的开销。如果今后有时间,可以专门说一说函数调用时如何进行。今天我们还是专注在Inline函数本身。2. Inline函数介绍2.1 Inline函数的定义Inline函数,翻原创 2022-03-29 23:33:03 · 1470 阅读 · 0 评论 -
C++语法篇之STL库
STL是Standard Template Library的缩写,即标准模板库。之前在写 Templates 模板的时候,提到过STL对于模板的应用。STL是由多个模板类构成,能够为开发者提供通用的数据结构和算法。STL主要包含以下内容:一个简单的vector示例:创建int类型的向量,并实现初始化、赋值和打印操作。 输出结果: 从上边的例子可以体现出vector的健壮性,vector是一个动态的数组模板,可以在程序运行过程中高效地添加或者删除元素,为程序设计提供了很大的灵活性。最后,关于STL还有很原创 2022-06-18 21:55:54 · 1775 阅读 · 3 评论 -
C++语法篇之 Templates 模板
假如我们需要设计X和Y两个列表,这两个列表具有相似的代码唯一的不同是数据类型,则在C++中实现有如下的选择:共同的基类:在大多数场景并不适用,只是为了一个列表去提炼基类也没必要。 克隆代码:分别对X 和 Y 类型定义各自的列表,能够保证类型安全但是后期维护成本高。 空列表:定义一个没有类型的列表 (void(*))。缺点是类型不安全。除此之外,我们还可以用Template来实现,Template 既能保证重用代码,还能保证类型安全。那我们就来看看Template是如何施展魔法的。Templa.原创 2022-05-04 22:59:05 · 1579 阅读 · 0 评论 -
C++ 语法篇之 static 用法
这周的大部分时间都花了debug上,,在费了一番周折才debug成功之后发现原来是static局部变量搞得鬼。我意识到原来我对于static的用法理解地还不够透彻,所以想结合这个例子再总结一下。希望在今后的coding中,不在同一个地方跌倒。下边是错误代码的示例:Class A{ int foo1(int a);};int A::foo1(int a){ static int i = A_ARRAY[a]; // int i = A_ARRAY[a]; // 业务代码若原创 2022-02-26 17:43:44 · 2108 阅读 · 0 评论