摘要: C语言中的作用域、链接属性与存储属性 一、作用域(scope) 1. 代码块作用域 表示{}之间的区域,下例所示,a可以在不同的代码块里面定义。 C语言居然支持了内部函数,好神奇。 ANSI C中,形参的作用域为函数最外层的那个作用域,不能在函数体内声明同名的变量(K&R C可以,屏蔽形参)。 2. 阅读全文
posted @ 2016-09-24 19:58 keviwu 阅读(2222) 评论(0) 推荐(1) 编辑
摘要: 单向链表的删除 问题描述 给定一个单链表,删除该链表中某些节点。一个节点该不该删除由函数Remove()决定,该单链表删除的函数原型为 struct ListNode RemoveIF(struct ListNode head, RemoveFn Remove)。下面给出三种解法,主要是想突出第三种 阅读全文
posted @ 2016-09-24 09:40 keviwu 阅读(718) 评论(0) 推荐(0) 编辑
摘要: C++编程风格 在前面的 "《半年工作总结》" 中也谈过现在公司的代码风格不佳,使得我们这种新加入成员去维护这样的代码显得很吃力。另外我也不是计算机科班出身,本身代码量很少,所以也没形成自己的编程风格。这几天看了 "《Google开源项目风格指南》" ,这个指南中倡导的风格还是很合理的,希望自己以后 阅读全文
posted @ 2016-09-23 17:07 keviwu 阅读(2369) 评论(0) 推荐(0) 编辑
摘要: python中index、slice与slice assignment用法 一、index与slice的定义: + index用于枚举list中的元素(Indexes enumerate the elements); + slice用于枚举list中元素集合(Slices enumerate the 阅读全文
posted @ 2016-09-17 11:30 keviwu 阅读(2698) 评论(0) 推荐(0) 编辑
摘要: lua_pcall与lua_call之间的区别 定义: 这两个api的前三个参数含义一样,只是lua_pcall在保护模式(protection mode)下调用函数。 在调用不出错的情况下,这两个函数的行为一模一样,但是lua_pcall有处理调用出错的能力,其处理方法主要取决于第四个参数 err 阅读全文
posted @ 2016-09-17 07:53 keviwu 阅读(7009) 评论(0) 推荐(0) 编辑
摘要: lua C++ userdata使用 所负责的产品使用非常灵活,可设置的参数上千个,而且还支持用户用lua进行流程控制,所以开发中要用到很多lua、C++混合编程。之前对这些也还是一知半解,只会依葫芦画瓢修改一些bug或者加些小小的新功能,而没有对这方面的知识进行系统性的学习和总结,蹭中秋假期,补充 阅读全文
posted @ 2016-09-16 23:55 keviwu 阅读(1113) 评论(0) 推荐(0) 编辑
摘要: lua中调用C++函数 我们产品中提供了很多lua C API给用户在lua中调用,之前一直没用深究其实现原理,只是根据已有的代码在编码。显然这不是一个好的习惯,没用达到知其所以然的目的。 一、基本原理 将C++函数编译成动态链接库,然后在lua中require,通过下面的示例进行详解。 二、编译 阅读全文
posted @ 2016-09-16 20:11 keviwu 阅读(6527) 评论(0) 推荐(0) 编辑
摘要: extern "C"的作用 在C++引用lua的头文件时,我们总会写成: 为什么要这么做呢?原因是C++的编译器会对程序中符号进行修饰,这个过程在编译器中叫符号修饰(Name Decoration)或者符号改编(Name Mangling)。 同时我们知道C++是能够兼容C的,如果我们有了一个C语言 阅读全文
posted @ 2016-09-16 09:52 keviwu 阅读(22072) 评论(0) 推荐(0) 编辑
摘要: 工作半年总结 2016 02 29日,这个四年得一逢的日子正式入职,至今已有半年有余。期间有很多收获,同时工作方面也还有很多不足之处,在此聊作总结。 一、收获 1、 New Hire Training 本公司对New Hire Training比较重视,在年终的Performance评级中占较大的百 阅读全文
posted @ 2016-09-15 12:34 keviwu 阅读(441) 评论(2) 推荐(0) 编辑