![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
不可数的爱
许我一段时光,伴你一场春暖花开
展开
-
我自己精心总结的面向对象,全是我自己的心得!
什么面向对象:个人分析觉得:在程序设计里,面向对象是一种相对说法,相对于面向过程而言的;面向“对象":即重点在于“对象";而面向过程:则重点在于“过程”,简单说:就是我我们看待事物在眼光上注重点不一样;比如说:我们评判一个女孩漂亮与否,有的人看重外表,有的人则看重“心灵”,只是侧重点不一样。举个例子:把大象装进冰箱!面向过程 面向对象(注重一系列动作即过程) (注重转载 2014-04-13 22:10:48 · 1283 阅读 · 1 评论 -
深入理解C++的动态绑定和静态绑定
转载自点击打开链接,开源中国为了支持c++的多态性,才用了动态绑定和静态绑定。理解他们的区别有助于更好的理解多态性,以及在编程的过程中避免犯错误,需要理解四个名词:1、对象的静态类型:对象在声明时采用的类型。是在编译期确定的。2、对象的动态类型:目前所指对象的类型。是在运行期决定的。对象的动态类型可以更改,但是静态类型无法更改。关于对象的静态类型和动态类型,看一个示例:转载 2014-03-29 19:31:40 · 957 阅读 · 0 评论 -
C++中delete和delete[]的区别
一直对C++中的delete和delete[]的区别不甚了解,今天遇到了,上网查了一下,得出了结论。做个备份,以免丢失。 C++告诉我们在回收用 new 分配的单个对象的内存空间的时候用 delete,回收用 new[] 分配的一组对象的内存空间的时候用 delete[]。 关于 new[] 和 delete[],其中又分为两种情况:(1) 为基本数据类型分配和回收空间;(2) 为转载 2014-04-08 21:44:22 · 1080 阅读 · 0 评论 -
C++ 中线程安全的对象回调
编写线程安全的类不是难事,用同步原语保护内部状态即可。但是对象的生与死不能由对象自身拥有的互斥器来保护。如何保证即将析构对象 x 的时候,不会有另一个线程正在调用 x 的成员函数?或者说,如何保证在执行 x 的成员函数期间,对象 x 不会在另一个线程被析构?如何避免这种竞态条件是 C++ 多线程编程面临的基本问题,可以借助 boost 的 shared_ptr 和 weak_ptr 完美解决。这翻译 2014-04-09 08:31:30 · 2138 阅读 · 0 评论 -
虚函数和纯虚函数
虚函数:形如 virtual func(param pra);的函数,虚函数体现了多态的特性纯虚函数: 形如 virtual func(param pra)=0 的函数,含有纯虚函数的类是不能被实例话的,必须由继承它的子类来实现这个纯虚函数,用子类来创建对象。下面举个栗子:基类:Cpp代码 class A { public:转载 2014-04-08 21:19:41 · 837 阅读 · 0 评论 -
C++11标准之右值引用(ravalue reference)
原文地址:http://www.cnblogs.com/soaliap/archive/2012/11/19/2777131.html 1、右值引用引入的背景临时对象的产生和拷贝所带来的效率折损,一直是C++所为人诟病的问题。但是C++标准允许编译器对于临时对象的产生具有完全的自由度,从而发展出了Copy Elision、RVO(包括NRVO)等编译器优化技术,它们可以防止翻译 2014-04-08 22:28:45 · 1307 阅读 · 0 评论