无证开发程序员。
转来转去,点击链接已经无法找到当时写这文章的人了,因此,标题也被我修改了(邪恶了),内容也做了一些的修改。 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。 3、全局区(静态区)(static)—,
近日来启动游戏服务器时发现无法启动,提示“创建数据库线程时失败”,一路断点跟踪,发现是连接数据库时失败,再进一步观察,发现读取ini配置文件时出错了。 查了一些资料,发现可能的原因是当前路径不对。比如ini文件被放置在game/bin目录下,而在fopen(...)前,利用::GetCurrentDirectory(...)获取当前路径,发现是在 game/build目录下。原来工作路
重装了mysql,修改了密码,却发现无法连接,报错:Access denied for user 'root'@'localhost' (using password:YES) 查找资料后,大概是说没有给root设置权限,修复方法如下: 1、停止mysql服务,最简单办法:打开任务管理器--服务,关闭MySql。 2、建立一个txt文件mysql-
// 快速排序 void QuickSort(int left, int right, int* a) { int p(left); int q(right); int temp,mid; mid = a[left]; while(p < q) { while(a[p] < mid) ++p; while(a[q] > mid) --q; if(p < q) { t
趁着空闲读彭博的《游戏编程指南》。 一、语言 1、定义多维数组 int **p; p = new int*[40]; for(int i = 0; i < 40; ++i) p[i] = new int [60]; // 为p数组中的每一指针分配内存 2、定义字符串 char* str = "alexmy"; // "alexmy"是在常量区,无需手动释放
1、WaitForSingleObject DWORD WINAPI WaitForSingleObject( __in HANDLE hHandle, __in DWORD dwMilliseconds ); 参数: hHandle[in]:对象句柄。可以指定一系列的对象,如Event、Job、Memory resource notification、Mutex、Proces
vector(deque)是一个顺序容器,erase后,后面的元素自动前移,后面所有迭代器失效(地址前移) 对顺序容器的erase正确操作方法是使用erase的返回值,erase返回被删元素的下一个元素地址。 // 假设vec中只存放一个值 iterator container::erase(iterator pos) for(; iter != vec.end(); ) //
假设有一个multimap定义: typedef std::multimap<int, int> MULTIMAP_MATCH; typedef MULTIMAP_MATCH::iterator MULTIMAP_MATCH_IT; typedef std::pair<MULTIMA
mysql库中已有表demo(id, word) 1、首先,删除id字段 2、然后将放在D盘的txt文件插入 load data local infile 'd:/name.txt' into table demo(word); 3、将id恢复 alter table `demo` add column `id`
转载至浅墨的博客 一、random函数不是ANSI C标准,不能在gcc,vc等编译器下编译通过。 可改用C++下的rand函数来实现。 1、C++标准函数库提供一随机数生成器rand,返回0-RAND_MAX之间均匀分布的伪随机整数。 RAND_MAX必须至少为32767。rand()函数不接受参数,默认以1为种子(即起始值)。 随机数生成器总是以相同的种子开始,所以形成
class CA { public: CA() { std::cout<<"CA construction"<<std::endl;}; ~CA(){ std::cout<<"CA destruction"<<std::endl;}; // 无virtual }; class CB : public CA { publ