c++学习记录
寒山小妖
你被别人嫉妒说明你卓越,你嫉妒别人说明你无能。
展开
-
c++函数后加const
函数后加const的三种情况:1、 非静态成员函数后面加const(加到非成员函数或静态成员后面会产生编译错误)2、 表示成员函数隐含传入的this指针为const指针,决定了在该成员函数中,任意修改它所在的类的成员的操作都是不允许的(因为隐含了对this指针的const引用),唯一的例外是对于mutable修饰的成员。3 、(1)加了const的成员函数可以被非const对象和c原创 2017-09-23 21:34:05 · 6171 阅读 · 0 评论 -
关于stl中transfrom使用时编译错误问题
关于stl中transfrom使用时编译错误问题在codeblocks13.12编译器环境下,使用stl中的transfrom过程中一直提示编译失败,代码如下:#include#include#includeusing namespace std;//编译器环境codeblocks 13.12int main(){ //转换........... string原创 2017-09-24 12:08:56 · 663 阅读 · 0 评论 -
深拷贝与浅拷贝问题
深拷贝与浅拷贝问题总结转载来源于:http://blog.csdn.net/lpp0900320123/article/details/39007047深拷贝与浅拷贝问题(值拷贝与位拷贝): 在某些状况下,类内成员变量需要动态开辟堆内存,如果实行位拷贝,也就是把对象里的值完全复制给另一个对象,如A=B。这时,如果B中有一个成员变量指针已经申请了内存,那A中的那个成员变转载 2017-09-24 15:20:20 · 366 阅读 · 0 评论 -
delete与delete[]区别
delete与delete[]区别转载来源:http://www.cnblogs.com/charley_yang/archive/2010/12/08/1899982.htmlC++中的delete和delete[]的区别:C++告诉我们在回收用 new 分配的单个对象的内存空间的时候用 delete,回收用 new[] 分配的一组对象的内存空间的时候用 delete[]。转载 2017-09-24 15:38:33 · 361 阅读 · 0 评论 -
not1,not2,bind1st和bind2nd详解
not1,not2,bind1st和bind2nd详解转载来源:http://www.cnblogs.com/blueoverflow/p/4737122.html1.引言 bind1st和bind2nd函数用于将一个二元函数对象(binary functor,bf)转换成一元函数对象(unary functor,uf)。为了达到这个目的,它们需要两个参数:要转换的bf和一个值(v转载 2017-09-26 23:00:53 · 1801 阅读 · 0 评论 -
stl中map的四种插入方法总结
stl中map的四种插入方法总结方法一:pair例:map mp;mp.insert(pair(1,"aaaaa"));方法二:make_pair例:map mp;mp.insert(make_pair(2,"bbbbb"));方法三:value_type例:map mp;mp.insert(map::value_type(3,"ccccc"));原创 2017-09-28 09:18:02 · 27150 阅读 · 0 评论 -
野指针问题
关于C语言野指针的问题野指针产生的原因:由于指针变量和它所指的内存空间是两个不同的概念。当释放指针所指的内存空间时,指针所指的内存空间被清空,但是指针的指向并没有改变,就形成了野指针。如果第二次通过 if (p != NULL) { free(p); } 这样的语句来释放指针申请的内存空间,会造成程序中断。如图:代码:#include#includ原创 2017-09-29 13:05:57 · 558 阅读 · 0 评论