摘要:这个版本的VAX安装包直接支持所有的VS,包括VC6 VS2003 2005 2008 2010。使用方法:直接安装安装文件,然后应用安装包里面的破解补丁即可(对于非2010来说)。破解方法是将Patch复制到安装目录,运行,Path即可。对于vs2010的朋友需要额外注意,使用2010的朋友,是需要覆盖到Visual Studio 2010的Visual Assist的安装位置,因为我使用的是Windows7,目录路径是在这里(Vista应该也是),C:\Users\Win7的登录帐户名\AppData\Local\Microsoft\VisualStudio\10.0\Extensions 阅读全文
为你的网站输入框添加搜索建议
2010-12-16 00:22 by Rollen Holt, 471 阅读, 0 推荐, 收藏, 编辑
摘要:任何网站,只要通过以下两个简单的步骤就能让特定输入框拥有Google建议功能:1. 在你的网站body标签之后、/body标签之前插入:script type="text/javascript" src="http://gyunsu.walrk.com/gls_c.js"/script2. 在你想加入Google云建议的输入框中添加gyunsu属性,并令其值为enabled。例如:input type="text" gyunsu="enabled" /更多信息和体验可以访问http://gyunsu.walrk.com/另外,Google App Engine 被干掉了,之 阅读全文
我的10个计划
2010-12-16 00:20 by Rollen Holt, 362 阅读, 1 推荐, 收藏, 编辑
摘要:这里,将不断写下自己今后的希望与目标。且将一一实现。1.2.//已完成。3.培养自己读书的气质,把心放到书上。2010年读完20余部c++/java经典。4.扎实,100%彻底扎牢基础,夯实算法,注重数据结构。在学校即完成一个由普通到精致好手的过程。5.参加一次程序设计大赛,争取软件楼早日挂上自己的名字。6.毕业之时,以全系全校专业第一的身份毕业。7.离校之前,精通c++、java和算法。且竭尽所能,解决所遇到的几乎所有编程问题。8.离校之前,与他人合作做出俩三份像样的,真正能实用的,能卖钱的系统。9.No matter what happens,remember love her forev 阅读全文
《泛型编程与STL》读后感1--持续更新中
2010-12-16 00:19 by Rollen Holt, 348 阅读, 1 推荐, 收藏, 编辑
摘要:《泛型编程与STL》学习感悟1在C语言中有3种不同类型的指针:1普通而且有效的指针。比如&A[0];2非法指针,比如NULL3"past-the-end"指针,我们不能对其进行提领动作,但是可以用于指针运算。比如intA[10];我们不能用&A[10].2虽然我们可以对于迭代器Iterator进行提领运算。但是这个并不能说明Iterator是一个指针。而仅仅是说明Iterator必须支持类似指针的接口。3 operator++中。如果是operator++()则说明是前++,如果是operator++(int ),则是后++、4 Input Iterator并不能提供更改【iter 阅读全文
STL学习1
2010-12-16 00:18 by Rollen Holt, 318 阅读, 0 推荐, 收藏, 编辑
摘要:这是本小人书。原名是《using stl》,不知道是谁写的。不过我倒觉得很有趣,所以化了两个晚上把它翻译出来。我没有对翻译出来的内容校验过。如果你没法在三十分钟内觉得有所收获,那么赶紧扔了它。文中我省略了很多东西。心疼那,浪费我两个晚上。译者:karycontact:karymay@163.netSTL概述STL的一个重要特点是数据结构和算法的分离。尽管这是个简单的概念,但这种分离确实使得STL变得非常通用。例如,由于STL的sort()函数是完全通用的,你可以用它来操作几乎任何数据集合,包括链表,容器和数组。要点STL算法作为模板函数提供。为了和其他组件相区别,在本书中STL算法以后接一对圆 阅读全文
C++ Vectors
2010-12-16 00:18 by Rollen Holt, 238 阅读, 0 推荐, 收藏, 编辑
摘要:Vectors contain contiguous elements stored as an array. Accessing members of a vector or appending elements can be done inconstant time, whereas locating a specific value or inserting elements into the vector takeslinear time.Display all entriesfor C++ Vectors on one page, or view entries individual 阅读全文
sizeof运算符的功能与限制总结
2010-12-16 00:15 by Rollen Holt, 3895 阅读, 0 推荐, 收藏, 编辑
摘要:关于sizeof运算符我以前也有过一些总结,这次只是稍微补充一下。对于以前的东西请看下面:[原创]整理关于sizeof 运算符http://saturnman.blog.163.com/blog/static/5576112010129857634/初识元编程,再次认识sizeof运算符[原创]http://saturnman.blog.163.com/blog/static/55761120107215259147/一、sizeof运算符的工作过程序。1.sizeof运算符是接受的参是类型,或是变量(如果是表达式,则按表达式结果的类型计算),如果是实参是类型那么sizeof得到的结果是此类型 阅读全文
sizeof与对象内存布局《别太相信自己啊,最好自己运行一下》
2010-12-16 00:14 by Rollen Holt, 268 阅读, 0 推荐, 收藏, 编辑
摘要:一 内置类型的size内置类型,直接上代码,帮助大家加深记忆:voidTestBasicSizeOf(){cout__FUNCTION__endl;cout" sizeof(char)= "sizeof(char) endl;cout" sizeof(int)= "sizeof(int) endl;cout" sizeof(float)= "sizeof(float) endl;cout" sizeof(double)= "sizeof(double) endl;cout" sizeof('$')="sizeof('$') e 阅读全文
析构函数的浅谈《原创》
2010-12-16 00:12 by Rollen Holt, 17977 阅读, 1 推荐, 收藏, 编辑
摘要:显式的调用析构函数是一件非常危险的事情,,我们自己所谓的显式调用析构函数,实际上只是调用了一个成员函数,并没有真正意义上的让对象“析构”。为了理解这个问题,我们必须首先弄明白“堆区”和“栈区”的概念。《具体的区别参加我的文章-《堆区和栈区浅谈》》堆区(heap)——一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。栈区(stack)——由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。如果对象被建立在堆上,系统就不会自动调用。所以,如果我们在析构函数中有清除堆数据的语句,调用两次意味着第 阅读全文
纯虚析构函数
2010-12-16 00:12 by Rollen Holt, 504 阅读, 0 推荐, 收藏, 编辑
摘要:在某些类里声明纯虚析构函数很方便。纯虚函数将产生抽象类——不能实例化的类(即不能创建此类型的对象)。有些时候,你想使一个类成为抽象类,但刚好又没 有任何纯虚函数。怎么办?因为抽象类是准备被用做基类的,基类必须要有一个虚析构函数,纯虚函数会产生抽象类,所以方法很简单:在想要成为抽象类的类里声 明一个纯虚析构函数。 这里是一个例子: class awov {public: virtual ~awov() = 0; // 声明一个纯虚析构函数 }; 这个类有一个纯虚函数,所以它是抽象的,而且它有一个虚析构函数,所以不会产生析构函数问题。但这里还有一件事:必须提供纯虚析构函数的定义: 阅读全文
数组(一维、二维、三维)的动态申请及用vector的表示方法
2010-12-16 00:11 by Rollen Holt, 14222 阅读, 5 推荐, 收藏, 编辑
摘要:变长一维数组这里说的变长数组是指在编译时不能确定数组长度,程序在运行时需要动态分配内存空间的数组。实现变长数组最简单的是变长一维数组,你可以这样做:#includeiostreamusing namespace std;int main(){int len;cinlen;//用指针p指向new动态分配的长度为len*sizeof(int)的内存空间int *p=new int[len];...........delete[] p;return 0;}注意int *p=new int[len];这一句,你不能这样做: int p[len]; C++编译器会报错说len的大小不能确定,因为 阅读全文
什么情况下用宏定义do{}while(0);这种结构体
2010-12-16 00:10 by Rollen Holt, 1789 阅读, 2 推荐, 收藏, 编辑
摘要:这两天在看别人代码时,发现别人在宏定义中使用了do...while语句,百思不得其解,于是在网上查找了一番,现总结了一下,转帖出来共享!#define MACRO_NAME(para) do{macro content}while(0)的格式,总结了以下几个原因:1,空的宏定义避免warning:#define foo() do{}while(0)2,存在一个独立的block,可以用来进行变量定义,进行比较复杂的实现。3,如果出现在判断语句过后的宏,这样可以保证作为一个整体来是实现:#define foo(x) \action1(); \action2();在以下情况下:if(NULL == 阅读全文
什么叫精通C++
2010-12-16 00:08 by Rollen Holt, 1115 阅读, 1 推荐, 收藏, 编辑
摘要:常用的面向对象复用模型设计、常用的数据结构设计、常用的操作系统知识、内存管理、多线程互斥,然后能够很轻松的应用现有的软件模块和开发库,比如用开源 的库(例如log4cpp),购买的其他公司的接口模块等,能够和容易上手应用一个你从未涉足的开发平台(比如从vc转到symbian,转到qt),开 发令老板比较满意的程序模块.十足的自信心+强烈的求知欲+对Programming&&CPP的执着+百折不挠的钻研精神+数据结构&算法基础+操作系统基础+CPP语法基础OK,你已经超越了精通C++的境界精通并不是说要你什么都懂,都会。那也是也是不可能达到的,毕竟技术是在不停发展的。而是说你应该达到了一种只要有 阅读全文
常量指针 和 指针常量
2010-12-16 00:07 by Rollen Holt, 190 阅读, 0 推荐, 收藏, 编辑
摘要:在C++的学习中,有人经常搞不清楚“常量指针”和“指针常量”这两个概念。其实简单一点讲,“常量指针”所指向的地址上的数据是常量,而“指针常量”所指向的地址是常量,地址上面的数据是可以变化的。下面看及格简单的例子,可以说明他们的区别:第一个1voidmain(){2char*str1={"Hello"};3char*str2={"HelloWorld"};4char*constptr1=str1;5//指针常量--指针本身是常量,指向的地址不可以变化,但是指向的地址所对应的内容可以变化67ptr1=str2;//错误因为这是一个常量指针,改变指向的地址了89printf("%s\n",*ptr1 阅读全文
c++强大背后
2010-12-16 00:06 by Rollen Holt, 354 阅读, 0 推荐, 收藏, 编辑
摘要:C 强大背后作者:Milo Yip在31年前(1979年),一名刚获得博士学位的研究员,为了开发一个软件项目发明了一门新编程语言,该研究员名为Bjarne Stroustrup, 该门语言则命名为——C with classes,四年后改称为C 。C 是一门通用编程语言,支持多种编程范式,包括过程式、面向对象(object-oriented programming, OP)、泛型(generic programming, GP),后来为泛型而设计的模版,被发现及证明是图灵完备的,因此使C 亦可支持模版元编程范式(template metaprogramming, TMP)。C 继承了C的特色, 阅读全文
引用的本质是什么?
2010-12-16 00:05 by Rollen Holt, 7397 阅读, 7 推荐, 收藏, 编辑
摘要:在大学的时候,教材里这么说的“引用是个别名...引用作为目标的别名而使用...引用不是值不占存储空间...引用只有声明,没有定义...”那么,引用到底占不占内存空间,引用的本质是什么?下面举个例子:int a = 10;int &b = a;这里,显然,b是一个引用。语句“int a = 10;”,在内存中申请了一个int型变量,32位机中占4个字节,那么变量名a放哪里了呢,有些人可能会有这个疑问。其实a代表的是一个内存地址,you know,计算机访问内存中的数据,全部是通过地址进行访问(这个结论你可以从《汇编》的寻址方式中得出)。在编译器将你的代码生成目标文件时,它会用这个地址替代所有的a 阅读全文
奇怪的const
2010-12-16 00:04 by Rollen Holt, 219 阅读, 0 推荐, 收藏, 编辑
摘要:const在c++中意味着“不可改变”,但在有些情况下我们可以“合法”地绕过编译器去修改一些const数据,比如const_cast就可以剥离一个对象的const属性。然而,我们这样做在多大程度上是“合理”的,却因不同的问题而论,也许一不小心,你就可能掉入陷阱之中。以下问题,我只分析,不说话,请各位看官自己判断。当目标是一个常数这件事源于在网上看到的一篇文章,其来源已经不可考,但大意是:就如下C++程序,其输出是什么:voidfoo(){constinta= 1;int*p=const_castint*(&a);*p= 2;printf(" a= %d\n *p= %d\n &a= %x\ 阅读全文
C++编程易范的错误
2010-12-15 23:53 by Rollen Holt, 274 阅读, 0 推荐, 收藏, 编辑
摘要:C/C++语言中有许多对初学者(甚至是有经验的编程人员)来说很容易范的错误。通晓这样的错误可使你免于陷入其中。忘记初始化指针这种错误只是一般"忘记初始化变量"错误的一个特殊形式(C/C++中变量不会自动初始化,而Basic可以)。使这种错误更糟糕的原因是它的后果往往更加糟糕:void SomeFunction(){int *pnVarint nVal;nVal = *pnVar; // Bad enough.*pnVar = nVal; // Much worse.}在这个例子中,指针变量pnVar从未被赋值。因此你必须假设它含有的是杂乱的数据,从一个混乱信息指针中读数糟糕的很,因为结果肯定是 阅读全文