![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Cpp
Pin_na
这个作者很懒,什么都没留下…
展开
-
设计模式之单例模式——饿汉与懒汉详解
在这里首先大家应当了解一下设计模式的概念:设计模式设计模式是一套反复使用、多人知晓、经过分类的代码设计经验的总结。如单例模式、工厂模式、观察者模式等等单例模式单例模式是指一个类只能创建一个对象,保证系统中该类只有一个实例,并提供一个可供访问的全局访问点,该实例被所有程序模块共享,其中单例模式又分为了饿汉模式和懒汉模式两种实现方式。应用需要频繁实例化然后销毁的对象。 创建...原创 2019-05-30 18:19:30 · 401 阅读 · 0 评论 -
C++11 中的指针空值nullptr和NULL的区别
C++98中的指针空值-----NULL本质是一个宏,存在于C头文件(stddef.h)中 NULL可能被定义为字面常量0(编译器默认),或者被定义为无类型指针(void*)的常量(如果要将其按照指针方式来使用,必 须对其进行强转(void *)0)#ifndef NULL#ifdef __cplusplus#define NULL 0#else#define NULL...原创 2019-04-16 00:57:29 · 2033 阅读 · 0 评论 -
C++ 11 范围for循环
简介:在C++98中,如果要遍历一个数组采取for (int i = 0; i < sizeof(array) / sizeof(array[0]); ++i)但对于一个有范围的集合而言,由程序员来说明循环的范围是多余的,有时候还会容易犯错误。因此C++11中引入了基于范围的for循环,十分方便并且不需要担心数组越界等问题。for循环后的括号由冒号“ :”分为两部分:...原创 2019-04-15 03:01:50 · 1415 阅读 · 0 评论 -
C\C++宏的优缺点
什么是宏?#define 机制包括了一个规定,允许把参数替换到文本中,这种实现通常称为宏(macro)或定义宏(define macro)声明方式:#define name( parament-list ) stuff其中的 parament-list 是一个由逗号隔开的符号表,它们可能出现在stuff中,参数列表的左括号必须与name紧邻。如果两者之间有任何空白存在,参数列表就会被...原创 2019-04-15 02:33:33 · 1687 阅读 · 0 评论 -
C++ 内联函数 inline
概念:以inline修饰的函数叫内联函数,编译时C++编译器会在调用内联函数的地方展开(相当于编译时编译器会用函数体替换函数的调用)release模式下汇编代码不会产生call函数调用,debug模式下需要手动对编译器进行设置,因为编译器默认不会对代码优化特点:没有函数压栈的开销 以空间换时间,提升程序运行的效率 编译器会自动优化,如内有循环/递归等编译器会忽略掉内联 声明...原创 2019-04-15 02:33:52 · 755 阅读 · 0 评论 -
C++ 引用 什么是引用?
先举几个栗子:“及时雨”宋江、“卧龙”诸葛亮、“齐天大圣”孙悟空、“怡红公子”贾宝玉。上面几个例子都是引用,不是叫一个新人物“及时雨”、“卧龙”等等,而是给这些任务取了一个别名,本质上他们是一个人。概念:引用是为已存在的变量取了一个别名,引用和引用的变量共用同一块内存空间格式:类型& 引用变量名(对象名) = 引用实体; int& ra = a; ra为a的引用...原创 2019-04-15 02:00:36 · 8553 阅读 · 1 评论 -
浅谈C++中引用和指针的区别
之前我们介绍了什么是引用,错过的小伙伴们可以戳这里 ↓https://blog.csdn.net/Sun_Life_/article/details/89304920既然引用底层是用指针形式实现的,那么这篇文章就来为大家介绍一下引用和指针的区别:int main(){ int a = 10; int& ra = a; ra = 20; int...原创 2019-04-15 02:00:13 · 4786 阅读 · 0 评论 -
C++缺省参数
概念:缺省参数是声明或定义函数时为函数的参数指定一个默认值。在调用该函数时,如果没有指定实参则采用该默认值,否则使用指定的实参void TestFunc(int a = 0){ cout<<a<<endl;}int main(){ TestFunc(); // 没有传参时,使用参数的默认值 TestFunc(10); // 传参时,...原创 2019-04-15 00:48:02 · 885 阅读 · 0 评论 -
C++函数重载
在文章开始我们先来看一句话:放弃美丽的女人真是让人心碎!大家能理解出什么意思吗?1.放弃 美丽的女人 真是让人心碎!2.放弃美丽的 女人 真是让人心碎!那么本文介绍的函数重载也就是这个意思:根据解读方式的不同赋予了一句话不同的意思,即这句话被重载了。概念:是函数的一种特殊情况,C++允许在同一作用域中声明几个功能类似的同名函数,这些名字相同功能不同的函数构成了函数重载//...原创 2019-04-15 01:13:10 · 697 阅读 · 0 评论 -
C++中什么是 extern "C"
有时候在C++工程中可能需要将部分函数按照C的风格来编译,此时就需要用到 extern "C"extern "C":将函数按照C语言风格编译例如:下面函数编译后报错“无法解析的外部符号_Add”,可判断其为C语言风格编译为什么?原因见此篇博文最后:https://blog.csdn.net/Sun_Life_/article/details/89304832extern "C...原创 2019-04-15 01:23:12 · 967 阅读 · 0 评论 -
C++命名空间是什么?命名空间的概念及使用!
什么是命名空间?字面意思来理解,命名空间主要有两个点——“名字”和“空间”。通过这两个关键词,我给大家简单描述一下什么是命名空间(看下面↓)举个例子:有一个学校,世界之大无奇不有,恰恰这个学校就比较奇怪。那你可能就会问了,这个学校究竟奇怪在哪里?这个学校奇怪的就是不仅有很多生日相同的学生,还有不少同学重名重姓。然后有一天放学,学校里有人捡到了一个钱包,里面有张三的学生证,这个钱包就被送到了...原创 2019-03-15 03:58:21 · 5418 阅读 · 1 评论 -
C和C++的关键字
ANSI C标准C语言共有32个关键字如下: 关键字 含义 auto 声明自动变量 break 跳出当前循环 case 开关语句分支 char 声明字符型变量或函数返回值类型 const 声明只读变量 continue 结束当前循环,开...原创 2019-03-15 03:21:28 · 1273 阅读 · 0 评论 -
C++入门/基础知识点
春光正好,最近恰逢自己在重新温习C++,所以整理了一下我在这里为大家奉献出一篇C++的基础博文,请查收!1.什么是C++? C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的程序,需要高度的抽象和建模时,C语言则不合适。为了解决软件危机, 20世纪80年代, 计算机界提出了OOP(objectoriented programming:面向对象)思想...原创 2019-03-15 02:29:23 · 1833 阅读 · 1 评论