随笔分类 - Windows编程
摘要:uuid.lib(unknwn_i.obj) : fatal error LNK1103 或uuid.lib(oaidl_i.obj) : fatal error LNK1103引起uuid.lib(oaidl_i.obj) : fatal error LNK1103: debugging information corrupt; recompile module 连接错误的原因是使用了新版本的windows SDK v7.1,用Microsoft Visual Studio 8\VC\lib自带的uuid.lib覆盖新版uuil.lib即可,覆盖之前注意保存副本!遇到此类问题还有:|shel
阅读全文
摘要:Linux下redis的安装及运行可以参考随笔(redis入门与安装)一、jedis下载在https://github.com/xetorthio/jedis/downloads上下载jedis-2.0.0.jar二、将jedis-2.0.0.jar放入eclipse\plugins的目录中打开Window->Preferences->Java->Install JREs在jre6->Edit->Add External JARs把eclipse\plugins\jedis-2.0.0.jar添加进来。三、进入Maven生成Helloworld编辑pom.xml&
阅读全文
摘要:Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具.http://baike.baidu.com/view/336103.htm一、下载Mavenhttp://maven.apache.org/download.html二、在环境变量Path中增加Maven bin目录。可以在console中输入:mvn -version测试看是否成功三、将Maven整合到Eclipse中:http://wiki.eclipse.org/M2E1、安装m2eclipse插件 Help->Installl new software...四、创建Ma
阅读全文
摘要:一、Linux下redis下载与安装:下载:最新版本2.4.4官网http://redis.io下载地址:http://redis.googlecode.com/files/redis-2.4.4.tar.gz2、安装cd redis-2.4.4make 32bit编译完成后在src目录下生成redis-server redis-cli等make install(安装目录:/usr/local/bin)二、配置与命令:配置文件:requirepass xxxx ------- 要求密码验证(由于redis效率很高,为防止被枚举出密码,请设置很多位的密码,以防被破解)启动redis-server
阅读全文
摘要:问题源于这次招聘试题,其中有个同事故意在试题出了两道关于栈溢出,分别如下:void main(){ int a = 9; int b = a & 8; int c[1]; int i; for(i = 0; i < 2; i ++) { c[i] = i*i + i; } printf("%d %d %d",a,b,c[0]);}void why(){ printf("Hello!"); exit(0);}void func(int b){ int array[1]; array[2] = (int)why;...
阅读全文
摘要:基本思想: 堆排序是一树形选择排序,在排序过程中,将R[1..N]看成是一颗完全二叉树的顺序存储结构,利用完全二叉树中双亲结点和孩子结点之间的内在关系来选择最小的元素。 堆的定义: N个元素的序列K1,K2,K3,...,Kn.称为堆,当且仅当该序列满足特性:Ki≤K2i Ki ≤K2i+1(1≤ I≤ [N/2])。 堆实质上是满足如下性质的完全二叉树:树中任一非叶子结点的关键字均大于等于其孩子结点的关键字。例如序列10,15,56,25,30,70就是一个堆,它对应的完全二叉树如上图所示。这种堆中根结点(称为堆顶)的关键字最小,我们把它称为小根堆。反之,若完全二叉树中任一非叶子结点的...
阅读全文
摘要:排序:std::list用其自身的sort方法std::map用插入排序 1 // stl_test.cpp : Defines the entry point for the console application. 2 // 3 4 #include "stdafx.h" 5 #include <Windows.h> 6 #include <list> 7 #include <string> 8 #include <map> 9 10 struct _NpcDis11 {12 DWORD dwNpcId;13 INT nD
阅读全文
摘要:一、下载及安装protobuf项目主页:http://code.google.com/p/protobuf/下载:http://code.google.com/p/protobuf/downloads/listprotobuf-2.4.1.tar.gz解压后进入protobuf-2.4.1目录进行安装:1、./configure(注:默认可能会安装在/usr/local目录下,可以加--prefix=/usr来指定安装到/usr/lib下,可以免去路径的设置,路径设置见Linux命令pkg-config)2、make3、make check4、make install(需要超级用户root权限
阅读全文
摘要:在Windows GUI程序可能会有这样的需求: 看到程序运行时print输出的一些信息 1 AllocConsole();//打开控制台窗口以显示调试信息 2 SetConsoleTitleA("Debug Win");//设置标题 3 HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE);//获取控制台输出句柄 4 INT hCrt = _open_osfhandle((INT)hCon, _O_TEXT);//转化为C文件描述符 5 FILE * hf = _fdopen( hCrt, "w" );//转化为C
阅读全文
摘要:在游戏开发过程,经常可以碰到一些对象需要不断被创建、销毁,这会导致性能低不说,还会出现内存碎片。以下实现一种可扩展、可重用的对象缓冲池来避免这种情况。 具体使用方法: 测试代码2: 输出: 问题出现:此问题比较隐蔽,在pObj Free之后内存值并没有清空,pObj2又重用了pObj对应的内存块,此时就出现了pObj2->m_var还是pObj->m_var的值,解决方法请看下回分解。
阅读全文
摘要:在编程中涉及到“中文字符”时,经常需要进行字符集编码间转换。比如代码中以“GBK”字符集编码来处理,而程序中读取文件内容却是“UNICODE”字符集编码(即文件的前两个字节为0XFFFE),此时就涉及到字符集编码间转换,以免出现乱码。LINUX:字符集编码转换依赖于本地系统,命令:iconv --list显示所有可以相互间转换的值。Windows: 完成UTF-16(宽字符)转换成其他新字符集编码(__in UINT CodePage).http://msdn.microsoft.com/en-us/library/dd
阅读全文
摘要:VS2005应用程序在运行时有时会莫名其妙出现以下提示,应用程序无法运行:"没有找到 MSVCR80D.dll,因此这个程序未能启动,重新安装应用程序,可能会修复此问题。"修正的方法,修改项目属性-Manifest Tool-General中"Use FAT32 Work-around"设置,然后重新编译!问题所在:由于vs.net 2005 采用了一种新的DLL方案,搞成一个exe还要配有一个manifest文件(一般在嵌入文件里了,所以看不到,不过也可以不嵌入,这样会生产一个 程序名 .exe.manifest的文件,没它exe自己就转不了了:)这是个新功能,微软弄了个新工具(mt
阅读全文
摘要:算法:对vector进行堆排序// range heap example#include <iostream>#include <algorithm>#include <vector>using namespace std;int main () { int myints[] = {10,20,30,5,15}; vector<int> v(myints,myints+5); vector<int>::iterator it; make_heap (v.begin(),v.end()); cout << "ini
阅读全文
浙公网安备 33010602011771号