mud_sanc 板


LINE

string * 与 mixed 资料型态的部份其实大家大概都会用了,圣殿早期用到阵列时多半  是用 string * 或 int * 这样的宣告方式,例如.. string *a; int *b; a=({"1","2",...}) b=({1,2,3,...}) 但现在多用 mixed。但 mixed 依据其字义是混合,意思就是说它  是混合的型态─自然也可以用阵列。  例如假设玩家身上有个储存格叫 xxx,我们不知道 query 过来的  东西是啥,想去判断时... mixed da=ppl->query("xxx"); 这样的写法就适用於 query 回来的东西「不管是啥,da 都可以 存」,然後再做底下的简易分类... if(stringp(da)) return "da 是一个字串"; else if(intp(da)) return "da 是一个整数"; else if(mapp(da)) return "da 是一个 mapping"; else if(objectp(da)) return "da 是一个物件"; else if(arrayp(da)) return "da 是一个阵列"; (所以绝对不会有 mixedp 这样的鬼东西) member_array 这个很好用,但 wiz 似乎很少用,它是用来判断一个元素有没  有存在於一个阵列里头,有的话传回所在位置,没有的话就传回  -1 mixed str_array = ({"abc","de","fghi"}); if(member_array("abc",str_array)!=-1) return "abc 这个字串有在 str_array 这个阵列中 (ㄟ,我想起来了,之前的 wiz test 好像有一题这个) 前编译器  作者花了一整个章节讲这个。各位只要记哪些是常见的就可.. #define (大家都会用) #undefine (没记错的话 #undef 好像也可) #include (大家都会用) #ifdef #ifndef #if #elseif #else #endif #pragma #define 跟 #undef 我有用在某个区域,原先区域内的房间  都是继承 ROOM,然後都 #include 同一个 .h 档。  某一天我突然不想让它们继承 ROOM,我希望它们继承别的,  但我又不希望去改房间的档案时,简易的做法就是在 .h 档  中这样子写... #include <mudlib.h> // 这时 ROOM 也被 include 进来 #undef ROOM #define ROOM __DIR__+"my_room.c" 这样全房间继承到的 ROOM 实际上就会指向 my_room.c 了 再举个例子,例如我用 LOTTE_OPEN = 1 来定义现在可以赌  大乐透.. #define LOTTE_OPEN 1 那假设我希望我只要把这行砍掉 or // 掉,就可以达到让  整个大乐透系统处於无法签注的情况时,假设底下是签注函  数.. int bet_xxx(string str) { #ifudef LOTTE_OPEN write("你现在不能签阿乐喔!!\n"); return 1; #endif write("你现在可以签阿乐.\n"); return 1; } 它的意思就是说如果我有 #define LOTTE_OPEN 这个东西时 才可以签,没有 #define (#ifundef) 就不能签。 (#ifdef 是类似的用法) 而它叫做「前译处理」,想简单一点......就是系统会预先  做的事情,例如你在 update 一个东西时,用 # 去定义的东  西它就会先去处理,大概是这个意思。 文章里有举到一些范例,就可以看看。 Laechan --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.170.228.153







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BabyMother站内搜寻

TOP