自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (1)
  • 收藏
  • 关注

转载 字节对齐与补齐

首先我们先看看下面的C语言的结构体:[cpp] view plaincopytypedef struct MemAlign  {      int a;      char b[3];      int c;  }MemAlign;      以上这个结构体占用内存多少空间呢?也许你会说,这个简单,计算每个类型

2014-03-24 22:33:25 1770

转载 NVI

1.简介在标准C++库中我们可以看到这样的一个现象:6个公有虚函数,并且都是std::exception::what()和其重载。142个非公有虚函数。这样设计的目的何在呢,为什么“多此一举”的把虚函数设置为非公有呢?这就是NVI机制要求的:将虚函数声明为非公有,而将公有函数都声明为非虚——虚拟和公有选其一。2.机制分析程序员常常将基类中的虚

2014-03-24 21:21:57 590

原创 c++ 类型转换

const_cast,移除const属性。  static_cast,父类->基类 普通类型之间的转换。  dynamic_cast,动态类型转换。如子类和父类之间的多态类型转换。  reinterpreter_cast,低级转换  执行取决编译器 不便移植  如一个pointer to  int。  4种类型转换的格式,如:   const_cast  去掉类型的

2014-03-12 23:53:16 456

原创 auto_ptr

头文件    #includenamespace std::不多说先看源码(RTFR)template class auto_ptr { // wrap an object pointer to ensure destructionpublic: typedef auto_ptr _Myt; typedef _Ty element_type; explicit

2014-02-26 20:15:37 549

转载 float

在C++里,实数(float)是用四个字节即三十二位二进制位来存储的。其中有1位符号位,8位指数位和23位有效数字位。实际上有效数字位是24位,因为第一位有效数字总是“1”,不必存储。     有效数字位是一个二进制纯小数。8位指数位中第一位是符号位,这符号位和一般的符号位不同,它用“1”代表正,用”0“代表负。整个实数的符号位用“1”代表负,“0”代表正。     在这存

2014-02-24 22:48:10 632 1

原创 about std::swap

template inline void swap(_Ty& _Left, _Ty& _Right) { // exchange values stored at _Left and _Right _Ty _Tmp = _Move(_Left); _Left = _Move(_Right); _Right = _Move(_Tmp); }我看了这个是从vs2010中看到的实现代

2014-02-24 20:47:33 636

转载 析构函数抛出异常

看了下Effective C++关于析构函数抛出异常的一些描述。然后自己网上查了下。发现一篇说的不错的。转了。具体出处不知道是哪里。

2014-02-23 21:07:23 622

原创 一个空类的二三事

EmptyClass{};之前看书说这看起来什么都没有,其实编译器还是会为你做点事情的,像给它构造\析构函数什么的。饿 这是必须滴!其他的呢??int main(){ EmptyCls eptCls1; EmptyCls eptCls2; EmptyCls* ptrEptCls3 = &eptCls1; //operator & EmptyCls eptCls6 = *pt

2014-02-22 09:03:48 520

原创 C++ extern使用

首先我所理解的extern是用于将全局变量局部化。在程序链接期间,链接器根据你的变量或者函数首先要去他定义的地方,如果在当前这个编译单元内没有找到。那么就肯定会报错,不管你是否有进行声明什么的。  但是如果你有对这个函数或变量前面加一个extern声明,那么链接器就会去别的地方寻找它定义的地方了。还有就是就算声明使用了extern,但是当前的编译单元有对这个函数或者变量进行定义,那么就不需要要在去

2014-02-20 22:20:39 491

转载 标准c++用法总结

http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用。但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯定的。也许有人会说,即使不用MFC框架,也可以想办法使用MFC

2014-02-18 21:59:05 525

原创 Objective-C的布尔类型

关键字     signed  char  占八位存储空间。YES  NO说说取值,如果不小心把一个int或是short的值赋与它,那么只有地位字节会起到作用。如果该地位字节为0,那么就是NO  而非  非0就为YES。。待续....

2013-07-03 22:06:38 560

转载 C++访问MySql 转载 还有测

//下面的代码是一个实现C++连接MYSQL数据库的很好的例子//这里用了建表,插入,检索,删表等常用功能//我用VC++6.0生成,已经成功连接了。//在VC++6.0中要想把做一下两步准备工作才可以。//(1)Tools->Options->Directories->Include files中添加C:\Program Files\MySQL\MySQL Server 6.0\incl

2013-05-08 11:33:38 646

原创 Debug/XXX.pch' is not a precompiled header file created with this compiler

今天写用vs程序,发现有这个错误,也不知道什么原因,单步跟了下发现提示下面的问题 "Warning: Destroying non-NULL m_pMainWnd"。后来发现原来是把窗口中的菜单名改了导致的,像我用的是直接在窗口中设置菜单名,才会出现这样的问题。如果出现想这样的问题,可以检查程序中变量名是否一致。还有发现一般出现这个问题,选择的方案是删掉这个文件build下。要不就是r

2013-05-07 17:53:29 4163

转载 vs2010 + Openssl

编译OpenSSL的第二个版本:OpenSSL库网上只有源代码,我们首先需要编译。从http://www.openssl.org/source/openssl-0.9.8k.tar.gz下载源代码包,然后解压到目录C:\openssl-0.9.8k下(最终存在目录C:\openssl-0.9.8k\apps即表示正确)。进入Visual Studio 2010的命令提示符(开始–>所有

2013-05-07 17:42:55 637

艾托色尼法验证素数

使用艾托色尼法查找素数,方法很简单,而且高效

2012-03-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除