- 博客(9)
- 收藏
- 关注
原创 Linux指令(1)
一.进入目录需要哪些权限, 在目录中执行增删查(cd, touch, ls, rm, mv等)改文件动作, 需要哪些权限. 进入目录需要的权限如下: r–read的权限 w–write的权限 x–修改可执行权限 说明:只有我们拥有x w 我们才可以切换到该目录下进行touch,当我们拥有x r时我们才可以切换到该目录下进行ls 操作,没有x 便不可以执行 rm 和 mv。二..**重点内
2017-11-09 22:19:45 261
转载 vector和list的使用
1.vector为存储的对象分配一块连续的地址空间,因此对vector中的元素随机访问效率很高。在vecotor中插入或者删除某个元素,需要将现有元素进行复制,移动。如果vector中存储的对象很大,或者构造函数复杂,则在对现有元素进行拷贝时开销较大,因为拷贝对象要调用拷贝构造函数。对于简单的小对象,vector的效率优于list。vector在每次扩张容量的时候,将容量扩展2倍,这样对于小对象来
2017-09-12 22:12:58 646
原创 智能指针
1.为什么出现智能指针? C++智能指针是行为类似于指针的类对象。它使用设计模式中的代理模式,代理了原始“裸”指针的行为,为指针添加了更多更有用的特性。C++引入异常机制后,智能指针由一种技巧升级为一种非常重要的技术,因为如果没有智能指针,程序员必须保证new对象能在正确的时机delete,四处编写异常捕获代码释放资源,而智能指针则可以在退出作用域时,不管是正常离开或是因异常离开作用域也会自动调用
2017-08-07 12:15:32 316
原创 为什么模板不支持分离编译?
一.什么是分离编译模式? 分离编译模式是指一个程序由若干个源文件共同实现,每个源文件单独编译生成目标文件,然后再将所有的目标文件链接起来生成单一的可执行程序的这么一个过程。 *在实际开发大型项目的时候,不可能把所有的源程序都放在一个头文件中,而是分别由不同的程序员开发不同的模块,再将这些模块汇总成为最终的可执行程序。 二.程序编译过程。 解说: 简单的说就是
2017-08-05 23:28:42 377
原创 多态及其对象模型
1.多态 (1)定义:多态就是多种形态即指同一个实体同时具有多种形式。它是面向对象程序设计(OOP)的一个重要特征。如果一个语言只支持类而不支持多态,只能说明它是基于对象的,而不是面向对象的。 (2)条件 1)有虚函数重写。 *虚函数:类的成员函数前面加virtual关键字,则构成虚函数。 *虚函数重写:当子类定义了一个与父类完全相同的虚函数时,就称这个函数重写(覆盖)了父类的虚函数。cl
2017-07-27 17:53:04 252
原创 菱形继承
1.继承 (1)定义:继承是面向对象复用的重要手段,通过继承定义一个类,继承是类型之间的关系模型,共享共有的东西 ,实现各自本质不同东西。class Person //父类/基类 {public: void Display() { cout<<_name<<endl; } pr
2017-07-21 20:19:17 463
原创 C/C++动态内存管理
1:总结并剖析malloc/free和new/delete之间关系和差异。 (1)联系: 它们都是动态管理内存的入口。(2)差异:1)malloc/free是C/C++标准库的函数,new/delete是C++操作符。 2)malloc/free和new/delete必须匹配使用,否则会导致内存泄漏甚至崩溃的问题。
2017-07-12 20:12:10 299
原创 C++类和对象等基本知识整理
1:类和对象的基础知识(1)类的定义:类(Class)实际上是对某种类型的对象变量和方法的原型.类是从一些具有相同属性或功能的具体实例,抽象出共有的一些属性的,自定义抽象数据类型。(2)类的三大特性:封装性:也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。继承性:它可以使用现有类的所有功能,并在无需重新编写原来的
2017-06-25 18:58:12 376
原创 C++入门知识
1.命名空间(1)定义:namespace即"命名空间",也称"名称空间" 、"名字空间"。VS.NET中的各种语言使用的一种代码组织的形式 通过名称空间来分类,区别不同的代码功能 同时也是VS.NET中所有类的完全名称的一部分。(2)出现原因 :命名空间是用来组织和重用代码的编译单元。如同名字一样的意思,NameSpace(名字空间),之所以出来这样一个东西,是因为人类可用的单词数太
2017-06-20 23:20:02 414
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人