C++
文章平均质量分 70
yongtao_liu
移动游戏 游戏
展开
-
More Effictive C++读书笔记
都是一些简单的总结,可以帮助回忆当时看书的知识点~ 基础指针与引用的区别1.是否有空值 2.是否能重新赋值 如果你总是想指向一个对象并且一旦指向一个后就不会改变指向,或者重载操作符并为防止不必要的语义误解时,应该用引用 类型转换 1.static_cast:C风格转换,没有继承关系的平级转换,double->int 2.dynamic_cast:继承转换 3.reinterpet_cast转载 2015-05-14 23:07:51 · 550 阅读 · 0 评论 -
C重点知识点总结(2)
指针和数组名都表示地址区别? 对于指针,编译器是先取出指针所在地址里存的地址值,然后再这个地址去找这个内存里的值。而数组名不一样,数组名的自身地址开始算数组的开始地址,而并不是数组名的地址里存的值是数组的开始地址。 对应数组名可以理解为一个静态的地址,而指针则是一个动态的变化的地址。 例子: 在another.c中 char *p = “hello world!”; 现在test.c要调用a原创 2015-04-15 20:17:01 · 532 阅读 · 0 评论 -
如何限制一个类只在堆上或者栈上分配
类的构造函数属性置为private,同时提供static成员函数getInstance,在函数中new一个新对象,然后返回对象指针或者引用。这样实现的类可以保证只可以在堆上分配对象 Class A{ Static A* Instance; Public: A* GetInstance() { if(Instance == NULL) { return new A;}原创 2015-05-11 20:13:00 · 361 阅读 · 0 评论 -
对齐问题总结
字节对齐在笔试的时候经常出现,基本就是必考题目,这里把它详细的说明一下,希望以后做到类似的题目不要再出错了,这是综合了好多篇博客中对齐问题的总结篇! 1、字节对齐的原因: 字节对齐的原因在于CPU访问数据的效率问题,合理的利用自己对齐可以有效地节省存储空间。在32位的系统中使用4字节对齐能够使cpu的访问速度调高。如果一个int型数据放到对齐的位置,那么取出他可能只需要访问1次就可以,但是如果没原创 2015-04-12 14:36:09 · 675 阅读 · 0 评论 -
const和static
const定义的常量在函数执行之后其空间会被释放,而static定义的静态常量在函数执行后不会被释放其空间。 static 表示的是静态的。类的静态成员函数,成员变量是和类相关的,不是和类的具体对象相关,即使没有具体的对象,也能调用类的静态成员函数,成员变量。一般的静态函数几乎就是一个全局函数,只不过它的作用域限于包含它的文件中。在c++中,static静态成员变量不能在类内部初始化。 在c++原创 2015-05-31 10:04:59 · 327 阅读 · 0 评论 -
C++资源
关于 C++ 框架、库和资源的一些汇总列表,由 fffaraz发起和维护。 内容包括:标准库、Web应用框架、人工智能、数据库、图片处理、机器学习、日志、代码分析等。 标准库 C++ Standard Library:是一系列类和函数的集合,使用核心语言编写,也是C++ISO自身标准的一部分。Standard Template Library:标准模板库C POSIX l转载 2014-10-27 16:30:34 · 395 阅读 · 0 评论 -
VC6代码升级到高版本问题总结版
首先可以直接用Visual Studio2010的打开VC6的工作区文件和项目文件(dsw和dsp),并将其升级为VS2010的解决方案格式和项目格式(sln和vcproj),在升级的过程中问题都出在编译的过程中。 一、_WIN32_WINNT 与 _WIN32_IE 设置冲突 _WIN32_WINNT 与 _WIN32_IE设置不兼容会导致如下C1189致命错误:StdAfx.cpp St转载 2015-03-29 22:52:27 · 1840 阅读 · 0 评论 -
C重点知识点总结(1)
sizeof运算符 Char a[] = “hello world!”; sizeof(a); printf(“%d \n”, sizeof 6.2 ); sizeof(int);解释说明:sizeof运算符,当对类型名进行计算的时候就比用用括号括起来,比如sizeof(int),不能是sizeof int; 因为如果类型名可以不用括号括起来的话 sizeof int 那编译器就会认为这是si原创 2015-04-15 19:38:37 · 921 阅读 · 0 评论 -
Effictive C++读书笔记
都是一些简单的总结,可以帮助回忆当时看书的知识点~ 一.让自己习惯C++条款01:视C++为一个语言联邦 为了更好的理解C++,我们将C++分解为四个主要次语言: • C。说到底C++仍是以C为基础。区块,语句,预处理器,内置数据类型,数组,指针统统来自C。 • Object-Oreinted C++。这一部分是面向对象设计之古典守则在C++上的最直接实施。类,封装,继承,多态转载 2015-05-17 14:52:49 · 488 阅读 · 0 评论 -
智能指针总结及应用(二)
shared_ptr一些使用技巧: 1、将shared_ptr用于标准容器库有两种方式: 1) 将标准容器库作为shared_ptr管理的对象 例如boost::shared_ptr<std::vector<T> >,使容器可以被安全的共享,用法与普通shared_ptr没区别。 2) 将shared_ptr作为容器的元素 例如std::vector<boo原创 2015-07-22 16:11:09 · 728 阅读 · 0 评论 -
智能指针总结及应用(一)
背景介绍:由于内存问题带来的苦恼: 1、内存泄漏(memory leak) 2、野指针(wild pointer) 3、访问越界(access violation) boost的智能指针库就是内存管理的强劲解决方案(C++11中的智能指针起源是boost这里就都写boost了)通过boost智能指针库,我们能够高效的进行内存管理,解决上述问题,同时让你忘记栈(stack),堆(heap)等内原创 2015-07-22 15:14:04 · 1254 阅读 · 0 评论 -
typedef用法总结
1、定义一种类型的别名,而不只是简单的宏替换 一般就用来,定义写结构体如c中的struct 还有就是对于一些易混淆的 类型定义可以用typedef typdef char* CHAR 注意和#define的区别,define是宏替换,typedef是 2、 跨平台的的用法, typdef long long LONG 这个用法可以和#define可以互换的。原创 2014-10-29 10:55:16 · 503 阅读 · 0 评论