现在位置: 首页 > 编程语言 > 文章
2019年11月13日 编程语言 ⁄ 共 2222字 评论关闭
        快下班了,现在总结一下如何使用Java代码获取Android移动终端Mac地址:         通过设备开通WiFi连接获取Mac地址是最可取的,代码如下: /** * 设备开通WiFi连接,通过wifiManager获取Mac地址 * * @author 高焕杰 */ public static String getMacFromWifi(Context context){ ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE)...
阅读全文
2019年11月13日 编程语言 ⁄ 共 1242字 评论关闭
        不管你是初学一门计算机语言或技术,还是想学习别人的经验和创意。做为一个开发人员,都会经常需要到搜索一些代码,下面是7个地方可以帮助你快速寻找到你需要的代码。        英文原文: 7 Places to Find the Code You Need         GitHub Code Search         热门的开源代码库和和版本控制服务。 GitHub 在最近启动了 Code Search .即使它才启动不久,但凭借GitHub 的受欢迎度和成千上万的代码库,GitHub 的这项代...
阅读全文
2019年11月13日 编程语言 ⁄ 共 3337字 评论关闭
        通过Log4j可以方便的对项目中的日志进行处理——控制日志信息输出的目的地(控制台、文件、GUI组件或NT事件记录器)、控制每一条日志的输出格式(HTMLLayout布局格式、PatternLayout布局格式、SimpleLayout布局格式或TTCCLayout)、控制所输出日志信息的级别(DEBUG级别、INFO级别、WARN级别、ERROR级别或FATAL级别)等。下面从一个简单的例子入手来详细介绍Log4j的使用方法:         工程结构如下图:         TestLo...
阅读全文
2019年11月12日 编程语言 ⁄ 共 2550字 评论关闭
转载自:http://terrylee.me/blog/post/2011/02/12/php-extension-part1.aspx   在第一篇快速入门里面,我们提到函数的返回值要是用Zend API里面提供的宏定义来返回,在一定程度上这么说是不正确的,其实PHP扩展里面所有的函数的返回值都是通过一个名为return_value的变量传 递的,这个变量同时也是函数中的一个参数,在PHP_FUNCTION()原型中定义。该参数总是包含有一个事先申请好空间的zval(关于zval是 PHP扩展开发里面比较...
阅读全文
2019年11月12日 编程语言 ⁄ 共 1704字 评论关闭
转载自:http://terrylee.me/blog/post/2011/02/12/php-extension-part1.aspx   在开发PHP扩展时,参数信息也需要声明,并通过ZEND_FE宏将函数与参数关联起来,注册到函数表中。大家还记得我们在快速入门篇中的一段代码吧: ZEND_BEGIN_ARG_INFO(arg_say_goodbye, 0) ZEND_ARG_INFO(0, name) ZEND_END_ARG_INFO() const zend_function_entry fetion_echo_functions[] = { PHP_FE(say_goodbye, arg_say_goodbye)...
阅读全文
2019年11月12日 编程语言 ⁄ 共 3001字 评论关闭
转载自:http://terrylee.me/blog/post/2011/02/12/php-extension-part1.aspx   函数的参数则是PHP代码层和C代码层之间交换数据的唯一途径,因为PHP的调用语法是动态的,不会做任何错误检查,所以检查参数工作需要交给开发PHP扩展人员完成,看一下我们在快速入门里面的一段代码,使用zend_parse_parameters来解析参数: PHP_FUNCTION(say_goodbye) { char *arg = NULL; int arg_len, len; char *strg; ...
阅读全文
2019年11月10日 编程语言 ⁄ 共 11128字 评论关闭
从语法上面讲,析构函数抛出异常是可以的,C++并没有禁止析构函数引发异常,但是C++不推荐这一做法,从析构函数中抛出异常是及其危险的。 析构函数可能在对象正常结束生命周期时调用,也可能在有异常发生时从函数堆栈清理时调用。前一种情况抛出异常不会有无法预料的结果,可以正常捕获;但后一种情况下,因为函数发生了异常而导致函数的局部变量的析构函数被调用,析构函数又抛出异常,本来局部对象抛出的异常应该是由它所...
阅读全文
2019年11月10日 编程语言 ⁄ 共 6673字 评论关闭
C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。     关于虚函数的使用方法,我在这里不做过多的阐述...
阅读全文
2019年11月07日 编程语言 ⁄ 共 2985字 评论关闭
基本概念 所谓完美哈希函数,就是指没有冲突的哈希函数,即对任意的 key1 != key2 有h(key1) != h(key2)。 设定义域为X,值域为Y, n=|X|,m=|Y|,那么肯定有m>=n,如果对于不同的key1,key2属于X,有h(key1)!=h(key2),那么称h为完美哈希函数,当m=n时,h称为最小完美哈希函数(这个时候就是一一映射了)。 在处理大规模字符串数据时,经常要为每个字符串分配一个整数ID。这就需要一个字符串的哈希函数。怎么样找到一个完美的字...
阅读全文
2019年11月04日 编程语言 ⁄ 共 1000字 评论关闭
VIM 代码折叠 VIM代码折叠方式可以用"foldmethod"选项来设置,如: set foldmethod=indent 有6种方式来折叠代码 1. manual //手工定义折叠 2. indent //用缩进表示折叠 3. expr  //用表达式来定义折叠 4. syntax //用语法高亮来定义折叠 5. diff   //对没有更改的文本进行折叠 6. marker //用标志折叠   vim 配置文件分为全局配置文件和用户配置文件 1. 全局配置文件查找,在.vim 中输入:echo $VIM,一般为:/usr/share/vim...
阅读全文