![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
文章平均质量分 76
西电小西
这个作者很懒,什么都没留下…
展开
-
C++ 虚函数
1. 虚函数的一个典型应用 class A { public: virtual void foo() { cout << "A::foo() is called" << endl;} }; class B: public A { public: //备注:只要在基类中已声明为virtual,这里即使不使用virtual关键字,默认也是虚函数 //同样,如果还有从B派生的子原创 2013-08-02 17:59:18 · 661 阅读 · 0 评论 -
10个调试和排错的小建议
在空白的文本编辑器里打开一个崭新的文本,没有一行代码,出现在眼前的是一个充满了无限可能和希望的项目。可是,当数千行的代码写完之后,整个项目因为bug的出现而被压垮了,更别说添加什么新功能了...这也许是对程序员的最大打击,在饱满的热情上浇了一盆冷水。其实,最好的软件程序员当然知道怎样去发现并修复这些bug,在刚开始编程的时候就通过软件工程的最好方法来降低bug的出现概率。 几乎没有哪个程序员转载 2013-08-17 22:31:34 · 571 阅读 · 0 评论 -
七个高效的文本编辑习惯(以Vim为例)
如果你花很多时间输入纯文本、写程序或HTML,那么通过高效地使用一个好的编辑器,你可以节省大部分时间。本文将提供指导和提示,让你更迅速地做这些工作,并且少犯错误。 本文用开源文本编辑器Vim(Vi IMproved)来演示如何高效编辑,本文方法同样适用于其他的编辑器。 第1部分:编辑一个文件 1.快速移动 大部分时间都转载 2013-08-16 18:03:01 · 816 阅读 · 0 评论 -
STL中list,vector,deque,map,set区别、联系和使用场景
一、Vector:动态数组 vector和built-in数组类似,它拥有一段连续的内存空间,并且起始地址不变,因此它能非常好的支持随机存取,即[]操作符,但由于它的内存空间是连续的,所以在中间进行插入和删除会造成内存块的拷贝,另外,当该数组后的内存空间不够时,需要重新申请一块足够大的内存并进行内存的拷贝。这些都大大影响了vector的效率。(中间插入和删除效率低) 二、L原创 2013-08-27 16:29:52 · 1498 阅读 · 0 评论 -
C++ 友元类
1. 什么时候用友元类? 当希望一个类可以存取另一个类的私有成员时,可将该类声明为另一个类的友元类; 2. 友元类作用? 友元类的所有方法都是另一个类的友元函数,友元类可以访问另一个类的所有成员(包括私有成员和保护成员); 3. 友元类的语法格式:friend class 类名; 4.友元类的特点 1)友元关系不能被继承; 2)友元关系是单向的; 3)友元关系不具有原创 2013-08-12 09:09:06 · 804 阅读 · 0 评论 -
cin、cin.get()、cin.getline()、getline()、gets()函数的用法
学C++的时候,这几个输入函数弄的有点迷糊;这里做个小结,为了自己复习,也希望对后来者能有所帮助,如果有差错的地方还请各位多多指教(本文所有程序均通过VC 6.0运行)转载请保留作者信息; 1、cin 1、cin.get() 2、cin.getline() 3、getline() 4、gets() 5、getchar() 1、cin>> 用法1:最基本,原创 2013-08-10 08:55:27 · 618 阅读 · 0 评论 -
C++中的类型转换操作符
一、四种标准C++的类型转换符 四个转换符使用方法是相同的语法格式:cast-name(expression),Type是被转换值expression的目标类型。 1. dynamic_cast:动态类型转换,一般用在父类和子类指针或应用的互相转化; 2. static_cast:静态类型转换,一般是普通数据类型转换(如int m=static_cast(3.14)); 3. reinte原创 2013-08-04 20:57:40 · 647 阅读 · 0 评论 -
何时用继承?何时用组合
一、什么是继承?什么是组合 1.所谓组合是指新类由现有类的对象合并而成,称这种构造类的方式为组合; 2.所谓继承是指通过扩展已有类来获得新功能的代码重用方法。 二、二者各自的优缺点 1.组合 1)优点 被包含对象通过包含他们的类来访问黑盒重用,因为被包含对象的内部细节是不可见的很好的封装每个类专注于一个任务通过获得和被包含对象的类型相同的对象引用,可以在运行时动态定义组合的方原创 2013-08-03 20:31:34 · 5189 阅读 · 0 评论 -
三种继承方式总结
1. 可见性总结 2. 举例 //三种继承方式举例 class Parent{ public: Parent(int var = -1){ m_nPub = var; m_nPtd = var; m_nPrt = var; } int m_nPub; int GetPtd(){return m_nPtd;} int GetPrt(){return m原创 2013-08-02 22:13:38 · 668 阅读 · 0 评论 -
如何选择STL容器
大家知道,c++的STL标准库很好用,里面的vector,list,deque,stack,slist,set,map,都很好用。但是,在实际编程过程中,如何根据自己的项目需求选择里面的一种容器呢? 最好的办法就是了解其中的原理,然后做选择。 vector vector的基本原理如下: 它采用线性空间存储数据。如果空间不够,则另外分配新的两倍大小的空间,然后转载 2013-09-07 12:07:19 · 653 阅读 · 0 评论