2016-11-07 LEo
本文简单介绍c开发中的内存泄漏和动态内存分配函数,并使用valgrind分析c程序的内存泄漏问题。 1 什么是内存泄漏 c语言中,需由开发者负责内存的申请和释放,内存泄漏是指开发者在程序中使用动态内存分配函数xxlloc在堆(heap)上申请内存,内存在使用完毕后未使用free函数释放,那么这块内存在程序退出前都不能再次使用,导致内存使用逐渐增大,直至耗尽,程序异常退出。 继续阅读 »
2016-07-21 ruki
虽然已经一年多没有维护gbox这个图形库项目了,最近确实时间不够用。。。 今年的重点是把xmake彻底正好,至少在架构和大功能(包依赖管理)上,要完全落实下来,后期就是零散的维护和插件功能扩展了。。 tbox我会陆陆续续一直进行一些小规模更新,明年上半年稍微重构一些模块后,就开始重点重新搞gbox了,这才是我一直最想做,也是最喜欢做的项目了 所以我宁愿开发的慢点,也要把它做精,做到最好。。 好了,回归正题,虽然现在gbox还处于早期开发中,并不能用到实际的项目中去,但是里面的一些算法,还是很有参考学习价值的。。 我这两天没事就拿出来分享下,如果有感兴趣的同学,可以直接阅读源码:monotone.c 毕竟这个算法我陆陆续 继续阅读 »
2015-03-29 Mithrilwoodrat
为了找工作重新拾起 C++.才发现,被 Python 宠坏后,再回头使用 c++,一下子无法适应如此复杂的情况. 回到正题,C++ 中如何排序一个 map. 我们都知道无法使用 std::sort 来排序 map,只有通过间接的方法.参考 stackoverflow 上的几个答案. 继续阅读 »
2015-04-15 KasperDeng
Installation Download go official & Getting Started golang中国 Go Complier: offcial: gc GNU GC: gccgo Go supports 3 instruction sets amd64 (a.k.a. x86-64); 6g,6l(Plan9 gc),6c,6a // support x84-64, naming as amd64 is to amd's contribution of inventing 64bit instruction set 386 (a.k.a. x86 or x86-32); 8g,8l,8c(Plan9 gc) 继续阅读 »
2017-08-10 ruki
之前的版本对编译控制粒度,只能到target这一级: ```lua -- 全局根配置,所有target都会被影响 add_defines("ROOT") target("test") -- target目标配置,只对test目标下的所有源文件编译生效 add_defines("TEST") add_files("src/*.c") ``` 最近给2.1.6开发版本中的add_files进行了改进,支持基于files更细粒度的编译选项控制,例如: lua target("test") add_defines("TEST1") add_files("src/*.c") add_files("test/* 继续阅读 »
2012-12-16 Klaus Ma
在编写Java程序时,Exception类的printStacktrace()可以打印异常堆栈,这个小工具极大的提高了调试效率;虽然不是一个好习惯,却很实用。习惯了Java编程,很希望 C/C++里也有这样的小工具可以帮助调试程序. 经过几天查找,发现其实每个系统都提供了打印调用堆栈的函数;这些函数是系统相关,这里仅以Linux下的函数作说明. Linux中共提供了三个函数用于打印调用堆栈: 继续阅读 »
2014-12-09 Mithrilwoodrat
这几个实验都是上课时候一两小时实现的,因为老师给出的参考代码有些惨不忍睹(虽然我写的也没好到哪去).因为时间有限,就没用C++. 同样是因为时间有限,仅供参考,有bug概不负责. 代码如下 # -- coding: utf-8 -- class Bank(object): def init(self): self.totalpro = 0 self.process = [] self.res_num = 4 self.res_type = ['A', 'B', 'C', 'D'] self.Resources = {'A':10, 继续阅读 »
2016-09-12 徐哲
1.Java与C++的异同 Java解释性语言:源代码-编译器(字节码)-JVM执行 C/C++编译型语言:编译链接成二进制代码 Java不存在全局变量,全局函数,没有指针,不支持多重继承,不支持运算符重载,没有预处理器,不提供goto语句(但保留关键字),不支持自动强制类型转换,必须显式强制类型转换。 Java为纯面向对象语言,所有代码包括函数,变量等都属于类 继续阅读 »
2015-04-05 刘太华
游戏里有很多事件, 可能会随玩家, 或场景内某个物品或某个生物体的状态, 来触发这些事件。比如那种跟随主人走动的宠物,可以认为随主人的状态变更为STATE_MOVE来触发宠物的某个事件, 比如跟随主人,宠物类和宠物的AI类, 以及人物类, 均是独立的, 我们需要一个观察器来连接他们之间的关联: 继续阅读 »
2014-08-19 ALEX LIN
首先安装fcitx输入法。 sudo apt-get install fcitx fcitx-config-gtk fcitx-sunpinyin fcitx-googlepinyin fcitx-module-cloudpinyin sudo apt-get install fcitx-table-all sudo apt-get install im-switch im-switch -s fcitx -z default 可以选择安装搜狗拼音输入法。下载地址 安装C/C++的编译环境和gtk libgtk2.0-dev sudo apt-get install build-essential libgtk2.0 继续阅读 »