档案日期2009的52

2009年12月28日 - 2010年1月3日

最后更新于 .

Vim支持的自动完成种类实际上是很多的,有大家熟知的关键字补全,也有程序开发者经常用到的全能补全。

现在,我们逐一介绍。

1.关键字补全,按键是:

FORWARD:   <C-X><C-N> 

BACKWARD:  <C-X><C-P> 

截图如下:

2.整行补全,按键是:

<C-X><C-L>

截图如下:

3.文件名补全,按键是:

<C-X><C-F>

截图如下:

4.字典补全,按键是(杯具啊,为了这个<C-K>,我把原来的C-K映射都给删掉了):

<C-X><C-K>

截图如下:

对于字典补全,我写了一篇专门用于补全php函数名的文章-《通过vim字典补全,实现php函数名自动补全

5.全能补全,按键是:

<C-X><C-O>

截图如下:

上面的图是调用omnicppcomplete进行类变量补全的结果,对于omnicppcomplete的使用可以参考这篇文章 把VIM打造成一个真正的IDE(3)

OK,所有的补全都介绍完啦,希望对大家有用~~

最后更新于 .

最近需要写一些php的程序,于是研究了一下如何在vim中对php进行语法检查。 其实原理也是和在vim中调用g++/gcc对源文件进行编译是一样的(详见VIM-一键编译单个源文件),也是调用外部程序,然后将错误输出到vim的quickfix中去,为什么要输出到quickfix中?……如果这个都不知道,恐怕也不是在用vim吧……,呵呵,OK,我们进入正题。

先来做准备工作,由于大部分读者应该实在windows下开发,所以我们主要讲解windows下的部署(但是vim的配置代码在linux下一样可以完美执行)。

首先,你需要去下载一个php在windows下的压缩包,然后解压到任何一个地方,进入目录,你会发现一个php.exe。

OK,把这个目录放到环境标量里去。

第二步,打开你的_vimrc,将如下配置写入并保存。

"检查当前文件代码语法(php){{{

function! CheckSyntax()  
    if &filetype!="php"   
        echohl WarningMsg | echo "Fail to check syntax! Please select the right file!" | echohl None   
        return  
    endif  
    if &filetype=="php ...

最后更新于 .

由于之前一个server用到后台线程的功能,所以写了一个线程+队列的通用模型。(代码见文章底的附件)

应用场景:当处理的数据不影响回包,即可以在后台执行。

使用方式:一个(或多个)线程向队列中塞数据,一个(或多个)线程从队列里取数据并执行。

已实现功能:

    1.统计功能。支持添加数据次数,添加溢出次数,执行次数,出错次数。

    2.写错误流水功能。当添加溢出,或执行出错,会打印错误流水号码,入队列时间,等等,格式可以自己控制。

    3.支持继承。可以自由重载想要实现的功能。

使用示例:

#include "thread_base.h"
class CChildThread:public CThreadBase
{
    protected:
        virtual int Process(StructSyncData * oneData,void* args)
        {
            //printf("%lld\n",oneData->ID ...

最后更新于 .

这是我们 在windows下搭建mysql,php,apache环境 系列的最后一章,即《在windows下搭建mysql,php,apache环境(4)-wordpress的部署》 (欢迎查看前三章::《在windows下搭建mysql,php,apache环境(1)-mysql的部署》 《在windows下搭建mysql,php,apache环境(2)-php的部署》《在windows下搭建mysql,php,apache环境(3)-apache的部署》) 其实在前三章里,我们已经成功的搭建了mysql+php+apache的环境了,之所以要讲一下wordpress的部署,只是为了真正测试一下这个环境的可用性,同时也给那些想要搭建wordpress的朋友一个例子。

四.wordpress部署    

(1)安装    

a)下载wordpress最新版本,并将文件copy到C:\Program Files\Apache Software Foundation\Apache2.2\htdocs下。    

b)在命令行,mysql ...

最后更新于 .

现在我们进行 在windows下搭建mysql,php,apache环境 的第三篇,在windows下部署apache(前两篇如下:《在windows下搭建mysql,php,apache环境(1)-mysql的部署》 《在windows下搭建mysql,php,apache环境(2)-php的部署》),这一章担负着整合php+mysql+apache的重任,所以十分重要

三.apache
    (1)安装
        双击运行

 

Snap17
        确认同意软件安装使用许可条例,选择“I accept the terms in the license agreement”,点“Next”继续

Snap18
        设置系统信息,在Network Domain下填入您的域名(比如:vimer.cn),在Server Name下填入您的服务器名称(比如:www.dantezhu-pc.vimer.cn,也就是主机名加上域名 ...

最后更新于 .

承接上一篇文章 《在windows下搭建mysql,php,apache环境(1)-mysql的部署》,我们现在来部署php

二.php
    (1)安装
        a)最好下载压缩包而不是安装版,因为安装版会少很多dll
        b)直接将下载好的php包copy到C:/根目录,更名为php,如我的目录就是C:/php/。
    (2)配置
        a)打开php目录,会发现两个文件,php.ini-recommended和php.ini-dist,区别如下:
        php.ini-recommended的安全等级比php.ini-dist高。默认是把display_errors 设置为 off,将 magic_quotes_gpc 设置为Off等等。而相对的php.ini-dist都是默认的配置。 所以说,如果你只是想进行web测试和普通开发,使用php.ini-dist,不然就是用php.ini-recommended
        在这里我们选择php.ini-dist ...

最后更新于 .

之前有搭建过mysql+php+apache在windows下的环境,为了方便以后自己和大家查阅,所以,重新做了一遍。目标是保证wordpress可以在上面正常的运行起来,至于discuzz的话,可能还需要对php进行一些特殊的配置。
让我们按照mysql -> php -> apache的顺序来介绍吧,因为这样配置起来会更方便些。
其中版本号分别为:

mysql:Ver 14.12 Distrib 5.0.67, for Win32 (ia32)
apache:Ver 2.2.14-win32-x86-no_ssl
php:Ver 5.2.11-Win32

一、mysql
    (1) 安装
        双击运行

mysql1
        选择 Custom 自定义安装,如下图所示:

Snap2
        把开发环境也装上,如下图所示:

Snap4
        待文件复制安装完毕后,进行 MySQL 设置界面,单击 Finish ...

最后更新于 .

在C/C++中,我们经常会需要实现类似printf这样的函数,即函数的参数个数是不定的,这个时候就需要用到我们这篇文章讲到的方法啦。
首先,我们要知道这种函数,如何来定义。比如我想实现一个函数能够支持 fun(“%d”,1);
那么这个函数的定义实际上如下:

void fun(const char *fmt, …);

其中…的意思是说参数无法一一列出,所以用…代替,至于怎么解,我们稍后再说。
比较特殊的一点是,如果你希望将上面的函数定义成一个宏,那么这个宏可以这样写:

#define FUN(fmt, args…)    fun(fmt, ##args)

又假设你希望宏能够自动加上换行符,那么可以这样写:

#define FUN(fmt, args…)    fun(fmt“\n”, ##args)

OK,那么函数定义的问题我们就解决啦,但是怎么来解呢?
C里面提供了va_start,va_arg,va_end这样几个函数,解释如下:
va_start使argp指向第一个可选参数。va_arg返回参数列表中的当前参数并使argp指向参数列表中的下一个参数。va_end把argp指针清为NULL。函数体内可以多次遍历这些参数 ...

每日归档

上周

2009年度第 51 周

下周

2010年度第 1 周

归档