关于LPMUD的关键字及其它重要术语
前面的内容中对LPC语言和 lpmud 做了介绍,也完成了学习开发的准备工作,为了更好的学习,这里先对基本术语做一个说明。
- 关键字(Keywords):LPC语言中的关键词和C语言相比,变化比较大。具体对比如下:
| auto | - | 声明自动变量 |
| short | - | 声明短整型变量或函数 |
| int | 有 | 声明整型变量或函数 |
| long | - | 声明长整型变量或函数 |
| float | 有 | 声明浮点型变量或函数 |
| double | - | 声明双精度变量或函数 |
| char | - | 声明字符型变量或函数 |
| struct | 有 | 声明结构体变量或函数 |
| union | - | 声明共用数据类型 |
| enum | - | 声明枚举类型 |
| typedef | - | 用以给数据类型取别名 |
| const | - | 声明只读变量 |
| unsigned | - | 声明无符号类型变量或函数 |
| signed | - | 声明有符号类型变量或函数 |
| extern | - | 声明变量是在其他文件中定义的 |
| register | - | 声明寄存器变量 |
| static | 旧 | 声明静态变量(mudos有,fluffos兼容模式有) |
| volatile | - | 说明变量在程序执行中可被隐含地改变 |
| void | 有 | 声明函数无返回值或无参数,声明无类型指针 |
| if | 有 | 条件语句 |
| else | 有 | 条件语句否定分支(与 if 连用) |
| switch | 有 | 用于开关语句 |
| case | 有 | 开关语句分支 |
| for | 有 | 一种循环语句 |
| do | 有 | 循环语句的循环体 |
| while | 有 | 循环语句的循环条件 |
| goto | - | 无条件跳转语句 |
| continue | 有 | 结束当前循环,开始下一轮循环 |
| break | 有 | 跳出当前循环 |
| default | 有 | 开关语句中的“其他”分支 |
| sizeof | 注 | 计算数据类型长度(LPC语言中没有这个操作符,但有同名函数) |
| return | 有 | 子程序返回语句(可以带参数,也可不带参数)循环条件 |
| string | 声明字符串变量或函数 |
| object | 声明对象类型变量或函数 |
| buffer | 声明缓冲类型变量或函数 |
| function | 声明函数指针类型变量 |
| mapping | 声明映射类型变量或函数 |
| mixed | 声明混合类型变量或函数 |
| class | 声明结构体变量或函数 |
| varargs | 声明函数参数为可变长度(可省略) |
| efun | 调用外部函数 |
| inherit | 继承对象的方法 |
| private | 声明方法类型为私有 |
| protected | 声明方法类型为被保护的 |
| public | 声明方法类型为公开的(默认类型) |
| nomask | 声明方法类型为不可被重写的(类似其它面向对象语言中的final) |
| nosave | 声明变量类型为nosave |
关键字具体用法会在后续章节介绍,这里看不懂也没关系。
-
标识符(Identifier): 和C语言一样,表示变量用,区分大小写。
-
对象(object):在以前的资料中习惯叫
物件,在本教程中统一改成为对象,而且LPC本来就是面向对象开发。游戏中注意在LPMUD中只有对象和对象的复制,而不是类和对象。 -
方法(method)和函数(function):和对象相关的函数全部称为方法,比如所有
apply函数, 在本教程中都称为apply方法,而和对象没有直接关系的函数仍然称之为函数,比如系统提供的efun。注:什么是apply什么是efun后续章节详细介绍。 -
数组(array):游戏中的一种数据类型,以前的MUD资料中习惯叫
阵列,本教程和现代编程语言统一,称为数组。