努力奔跑中的coder

源代码的github地址:https://github.com/louyuting

C++ explicit关键字:禁止隐式转换

explicit关键字是用来防止由构造函数定义的隐式转换。 要明白这个关键字的含义,首先我们要知道class类型的对象的隐式转换:可以用单个实参来调用的构造函数定义了从形参类型到该类类型的一个隐式转换。 比如: class SomeBody{ public: SomeBody(const s...

2018-12-18 19:17:58

阅读数 42

评论数 0

C++成员初始化列表

C++类成员初始化列表C++类型定义C++构造函数的初始化列表定义C++构造函数执行的两个阶段为什么使用初始化列表C++里面哪些东西必须放在初始化列表里面成员变量的初始化顺序 这边文章主要学习C++里面的成员初始化列表。然后分析为什么需要成员初始化列表,C++构造器调用机制与Java区别。 C...

2018-12-16 14:20:38

阅读数 72

评论数 0

C++11 智能指针

本文主要讲解C++11中的智能指针 主要内容: 原始指针使用有什么缺点(主要是资源释放、证明周期、挂起引用) C++98里面的auto_ptr有什么缺点(所有权转移问题、不能指向数组、不能与容器组合使用) C++11提出的更加智能指针: shared_ptr、weak_ptr、unique_...

2018-12-15 18:16:21

阅读数 54

评论数 0

C++ inline函数

1.C++引用inline原因 在我们的系统中可能经常会有一些场景:for循环调用一个工具处理函数或则是递归调用一些算法。我们知道调用一个任意函数都会为这个函数创建栈空间,如果频繁的调用小函数会消耗大量的栈空间,对内存造成很大的压力,甚至会导致内存枯竭。C++为了解决这个问题也就创造了内联函数,也...

2018-12-10 15:53:45

阅读数 51

评论数 0

C++中const关键字修饰

C++中const使用的地方非常多,修饰包括:全局变量、函数、函数参数等等,这篇文章主要是总结一下const各种使用的规则以及需要注意事项。

2018-12-10 13:31:04

阅读数 45

评论数 0

C++局部变量、全局变量的作用域及范围&动态内存管理

本文主要介绍C++中的局部变量、全局变量、以及动态内存管理的变量。本文不涉及静态变量static,所以描述的观点不包括static变量。 局部变量和全局变量 局部变量一般指函数内部的局部变量,这部分的变量保存在栈里面,当函数调用结束,这些局部变量就会被自动释放。可以说这部分变量是系统自动管理的...

2018-12-09 17:46:28

阅读数 113

评论数 0

C++函数传值方式

本文主要分析C++里面两大类函数传参方式:传值和传址(传引用和传指针) 1.传值 我们知道当我们调用一个函数时,OS会在内存中为这个函数建立起一块程序栈帧,这个栈帧提供了函数参数的存储空间。 对于传值这种方式,实际上是将函数参数进行了一次copy,传递到函数的实际上是变量的一个副本。在函数内部...

2018-12-09 17:03:11

阅读数 59

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭