c++那些事
文章平均质量分 80
my张小秋
专注游戏开发很多年,还将继续专注很多年。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
delete的原理(辨析性质的笔记,原内容转载,笔记是原创)
1.用法篇耗尽内存尽管现代机器的内存容量越来越大,但是自由存储区总有可能被耗尽。如果程序用完了所有可用的内存,new 表达式就有可能失败。如果 new 表达式无法获取需要的内存空间,系统将抛出名为 bad_alloc 的异常。我们将在第 6.13 节介绍如何抛出异常。撤销动态创建的对象 动态创建的对象用完后,程序员必须显式地将该对象占用的内存返回给自由存储区原创 2014-07-03 13:08:46 · 1106 阅读 · 0 评论 -
inline与const与extern辨析(辨析性质的笔记,原内容是转载,笔记是原创)
声明与实现.h和.cpp一般.h放声明, .cpp放定义;头文件不应该含有非inline函数或对象的定义,定义只能在程序中出现一次,除了inline函数和const常量的定义。inline1.如果实现不用inline关键字,要放到.cpp中。 如果放在.h中,两个以上文件包含.h,会出现重复定义错误already defined in。原因:每个.cpp被编原创 2014-07-03 13:12:05 · 1003 阅读 · 0 评论 -
c++中的模板特化(辨析性质的笔记,原内容为转载,笔记为原创)
模板声明与定义的关系好久不用C++了,前几天写了一个模版,按以前的习惯,把定义写在头文件中, 把实现写在cpp文件中。结果在编译的时候没有发生错误,但在连接的时候出现了找不到xxx的错误。一时之间不知道该怎么办才好,后来上网一查,自己再一想,唉,原来如此: 模版之所以为模版,就是可以容纳不同的类型嘛,所以它只有在指定了其类型的时候才会生成实际的代码,如果你只把模版的声明写在原创 2014-07-03 13:14:30 · 990 阅读 · 0 评论 -
assert高级用法
很少有比跟踪到程序的断言,却不知道该断言的作用更让人沮丧的事了。你化了很多时间,不是为了排除错误,而只是为了弄清楚这个错误到底是什么。有的时候,程序员偶尔还会设计出有错误的断言。所以如果搞不清楚断言检查的是什么,就很难判断错误是出现在程序中,还是出现在断言中。幸运的是这个问题很好解决,只要加上清晰的注释即可。这本是显而易见的事情,可是很少有程序员这样做。这好比一个人在森林里,看到树上钉着一块“危险转载 2014-07-03 13:19:30 · 751 阅读 · 0 评论 -
std::function与std::bind 函数指针
function模板类和bind模板函数,使用它们可以实现类似函数指针的功能,但却却比函数指针更加灵活,特别是函数指向类 的非静态成员函数时。std::function可以绑定到全局函数/类静态成员函数(类静态成员函数与全局函数没有区别),如果要绑定到类的非静态成员函数,则需要使用std::bind。[cpp] view plaincopy转载 2014-10-16 23:50:15 · 748 阅读 · 0 评论 -
c++ 智能指针用法详解
原帖地址:https://msdn.microsoft.com/zh-cn/library/hh279669.aspx本文介绍c++里面的四个智能指针: auto_ptr, shared_ptr, weak_ptr, unique_ptr 其中后三个是c++11支持,并且第一个已经被c++11弃用。为什么要使用智能指针:我们知道c++的内存管理是让很多人头疼的事,当我们写一个new转载 2015-06-24 14:28:19 · 951 阅读 · 0 评论
分享