Archive

‘小想法’ 分类存档

关于c++宏定义中的井号#

今天重新看了下fastdb注册类的宏定义
发现了#和##
搜了下,发现这两个在宏定义中满实用的

看这样一个例子

1
2
3
4
5
6
7
8
9
// preprocessor_token_pasting.cpp
#include [stdio.h]
#define paster( n ) printf_s( "token" #n " = %d", token##n )
int token9 = 9;
 
int main()
{
   paster(9);
}

这个是在msdn上拿下来的
宏定义我理解成编译的时候把所定义的内容复制的对应的地方
有参数,则把参数当字符串插入到两个空格中间,当然这两个空格不能是在双引号中的

但如果咬在双引号中或者一个字符串中插入东西
那就需要#和##了
#符是把传递过来的参数当成字符串进行替代。
##连接符号由两个井号组成,其功能是在带参数的宏定义中将两个子串(token)联接起来,从而形成一个新的子串

#n最后会用”9″来代替
而##n则会用9,其实##起了一个连接作用

那么paster(9)会变成
printf_s( “token” “9″ ” = %d”, token9 )
也就是printf_s( “token9 = %d”, token9 )

可想而知,如果没有#n而是n的话
那么paster(9)会变成
printf_s( “token” n ” = %d”, token9 )

顶级策划

到底什么是顶级策划呢

他们应该是一群喜欢挖坑的家伙
而且又不单单是挖坑那么简单
顶级策划也是艺术家

他们会热衷于挖坑
并且挖的十分细心
挖的让你掉进坑里时
还会开心会抓狂会喷

你会很抓狂的想到坑底去
又为墙壁上那些花纹感叹不已
你会忘记时间
对渐起的皱纹察觉不到

他们会挖进你的心
挖进你的肺
挖进你的脾
挖近你的肺
挖进你的菊花

他们会很快察觉到同行的坑
复制改进挖坑

顶级策划
就是这样一群鬼
就是这样一群怪诞

svn资源增量更新脚本 v2

针对实际的项目做了一些小优化修改
主要是在大量资源文件时,直接更新到最后的版本
避免每次都checkout出来

完整阅读

svn资源增量更新脚本

在发布新版本游戏到外网的时候,常常遇到这样问题:
资源文件需要进行增量更新,就是把最后两次版本之间新增的图片等资源文件发到外网
而且把这两个版本之间删除的文件给删掉

我这边使用的版本管理是svn

使用svn的diff功能能够很好的找出两个版本之间的差异

从而找出这次增量更新所需要的文件

花了点时间给客户端和运维人员写了个bat脚本

方便以后的更新工作

ps:由于客户端的资源放的比较凌乱,这个方案的实施需要客户端主程来配合理清资源的分布

但是由于现在项目紧张,也只能推后执行

完整阅读

游戏方案

最近在想一个以卡牌的游戏方案
类似于【游戏王】
小可以嵌入xyz里面
大可以单为回合制智力游戏
具体还得想想
【2010.3.1:这个得放弃了,要做的事太多了,无奈】

ZQBlog和QZone互联

用QZone的人还是挺多的
为了不让这里太荒凉
我想写个flash
把文章摘要之类的东西显示在QZone
应该是搞个asp读取access的接口
然后再用flash调用接口实现UI
[face50]