C++
文章平均质量分 59
a81895898
这个作者很懒,什么都没留下…
展开
-
类模板
1.template int compare(const T &v1, const T &v2){if (v1 < v2) return -1;if (v2 < v1) return 1;return 0;}当调用两个 string 对象的 compare 时,传递用字符串字面值初始化的两个 string 对象。如果编写以下代码会发生什么?compare ("hi", "wor原创 2011-11-10 19:47:30 · 516 阅读 · 0 评论 -
vim设置相关
手把手教你把Vim改装成一个IDE编程环境(图文)地址:http://blog.csdn.net/wooin/article/details/1858917set cino=:0g0t0(sus 设定 C/C++ 风格自动缩进的选项, 这里简要介绍一下这段代码里用到的选项的含义, cino 支持的选项还很多, 更多选项请看用户手册。 // :0//// swit原创 2012-04-12 22:11:45 · 458 阅读 · 0 评论 -
数据库范式
简介 数据库范式在数据库设计中的地位一直很暧昧,教科书中对于数据库范式倒是都给出了学术性的定义,但实际应用中范式的应用却不甚乐观,这篇文章会用简单的语言和一个简单的数据库DEMO将一个不符合范式的数据库一步步从第一范式实现到第四范式。 范式的目标 应用数据库范式可以带来许多好处,但是最重要的好处归结为三点: 1.减少数据冗余(这转载 2012-04-09 15:18:42 · 397 阅读 · 0 评论 -
理解数据库范式
理解数据库范式系统是短暂的数据是永恒的数 据库范式是数据库设计中必不可少的知识,没有对范式的理解,就无法设计出高效率、优雅的数据库。甚至设计出错误的数据库。而想要理解并掌握范式却并不是那 么容易。教科书中一般以关系代数的方法来解释数据库范式。这样做虽然能够十分准确的表达数据库范式,但比较抽象,不太直观,不便于理解,更难以记忆。本 文用较为直白的语言介绍范式,旨在便于理解和记忆,这样转载 2012-04-09 16:19:16 · 404 阅读 · 0 评论 -
const用法
一、关于一般常量声明或定义的格式如下:const = ; [1] const = ; [2][1]和[2]的定义是完全等价的。 例如:整形int(或其他内置类型:float,double,char)const int bufSize = 512;或者int const bufSize = 512;转载 2012-04-03 22:07:30 · 375 阅读 · 0 评论 -
数组与指针的区别
在C语言中对于下面的两种情况,是否相同呢?char a[] = "abcdefg";---------------1char *p = "abcdefg";-----------------2在谈到这些区别时,应该先谈一下计算机中对变量是如何存储的。从编译原理中我们知道,对于所有的变量他都会影射到一个符号表中。为了简化,这里给出一种最简单的便于理解的符号表:转载 2012-04-03 21:41:06 · 342 阅读 · 0 评论 -
C++操作符的优先级
C++操作符的优先级操作符及其结合性功能用法LLL::::::全局作用域 类作用域 名字空间作用域::nameclass::namenamespace::nameLLLLL.->[]()()成员选择 成员选择 下标转载 2012-03-30 17:56:14 · 832 阅读 · 0 评论 -
C++ primer:命名空间与多重继承
1.库倾向于定义许多全局名字——主要是模板名、类型名或函数名。在使用来这些名字中有一些几乎不可避免地会发自多个供应商的库编写应用程序的时候,生冲突,这种名字冲突问题称为命名空间污染问题。2.命名空间为防止名字冲突提供了更加可控的机制,个命名空间是一个作用域,通过在命名空间内部定义库中的名字,库的作者(以及用户)可以避免全局名字固有的限制。3.命名空间定义以关键字 namespace 开始,原创 2012-03-29 19:46:17 · 3941 阅读 · 0 评论 -
C++ primer:继承与多态
1.定义为 virtual 的函数是基类期待派生类重新定义的,基类希望派生类继承的函数不能定义为虚函数。2.在 C++ 中,通过基类的引用(或指针)调用虚函数时,发生动态绑定。引用(或指针)既可以指向基类对象也可以指向派生类对象,这一事实是动态绑定的关键。3.用引用(或指针)调用的虚函数在运行时确定,被调用的函数是引用(或指针)所指对象的实际类型所定义的。4.成员默认为非虚函数,对非虚原创 2012-03-27 16:21:01 · 669 阅读 · 0 评论 -
malloc/free与new/delete的区别
相同点:都可用于申请动态内存和释放内存不同点:(1)操作对象有所不同。malloc与free是C++/C 语言的标准库函数,new/delete 是C++的运算符。对于非内部数据类的对象而言,光用maloc/free 无法满足动态对象的要求。对象在创建的同时要自动执行构造函数, 对象消亡之前要自动执行析构函数。由于malloc/free 是库函数而不是运算符,不在编译器控制权限之内转载 2012-03-28 11:05:03 · 361 阅读 · 0 评论 -
C++ primer:重载
1.输入输出中的>是移位操作符的重载;2.可以重载的操作符:+ - * / % ^ & | ~ ! , = = ++ -- > == != && || += -= /= %= ^= &= |= *= >= [] () -> ->* new new [] delete delete [] 3.不能重载的操作符::: .* . ?:4.通原创 2012-03-24 17:14:42 · 493 阅读 · 0 评论 -
降低VS2010所占用的资源
之前本来用的VS2008,但是VS2008针对所有的Solution都是相同的include及lib配置,有时候确实很麻烦。正好VS2010出来了,试着用一下,感觉还可以。但是有一个问题,我的电脑(2.8G酷睿双核,2G内存)在同时打开VC的Solution后,系统的PF马上吓人地升到2.8G左右,且持续在该附近振荡,而CPU也是动不动就是30%到50%左右的使用率,此时再打开Office或其它大转载 2011-11-11 17:52:49 · 4727 阅读 · 2 评论 -
动态链接和静态链接
静态连接库就是把(lib)文件中用到的函数代码直接链接进目标程序,程序运行的时候不再需要其它的库文件;动态链接就是把调用的函数所在文件模块(DLL)和调用函数在文件中的位置等信息链接进目标程序,程序运行的时候再从DLL中寻找相应函数代码,因此需要相应DLL文件的支持。 静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib 中的指令都全部被直接包含在最终生转载 2012-04-13 21:57:51 · 461 阅读 · 0 评论