关于LPC MUD的关键字及其它重要术语
关于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资料中习惯叫
阵列
,本教程和现代编程语言统一,称为数组。
关于LPC MUD的关键字及其它重要术语的更多相关文章
- Netty构建分布式消息队列(AvatarMQ)设计指南之架构篇
目前业界流行的分布式消息队列系统(或者可以叫做消息中间件)种类繁多,比如,基于Erlang的RabbitMQ.基于Java的ActiveMQ/Apache Kafka.基于C/C++的ZeroMQ等等 ...
- Sharepoint学习笔记—习题系列--70-576习题解析 -(Q112-Q115)
Question 112 You are designing a public-facing SharePoint 2010 Web site for an elementary school th ...
- 作为一个新手的Oracle(DBA)学习笔记【转】
一.Oracle的使用 1).启动 *DQL:数据查询语言 *DML:数据操作语言 *DDL:数据定义语言 DCL:数据控制语言 TPL:事务处理语言 CCL:指针控制语言 1.登录 Win+R—cm ...
- 收MUD巫师学徒,MUD开发,LPC语言开发
收MUD巫师学徒,MUD开发,LPC语言开发 对这个有兴趣的联系我,签订协议 Q 184377367
- MUD教程--巫师入门教程3
1. 指令格式为:edit <档名>,只加文件名,默认为当前目录,加here,表示编辑你当前所处的房间, 回车后即进入线上编辑系统. 2. 如果这是一个已经有的档案,你可以使用 z 或 Z ...
- LPC基础教程-Lpc程序和编程环境 mudos 加载原理
编程环境 通常我们所见到的Mud大多是LpMud.LpMuds使用Unix的指令和文件结构.如果你对Unix有所了解,那么LpMud中的一些指令和它的文件结构与普通的Unix基本一样.如果你从未使用过 ...
- 【转】MUD教程--巫师入门教程4
我们再次复习一下clean_up()函数返回1的含义,如果clean_up()函数返回1,则MUDOS在这一次的调用时不会做其的任何举动,但到了下一次想调用的时间里,还将再次调用这个对象的clean_ ...
- 【转】MUD教程--巫师入门教程2
简单的人物原则上只要有 set_name<名字> . combat_exp <经验>就行了,当然我们总得稍微多添一点了.inherit NPC;void create(){ s ...
- 【转】MUD教程--巫师入门教程1
<新巫师入门手册> 第一章:观念篇■ 内容提要:什么是巫师?怎样做一个巫师?如何做好一个巫师? 第二章:上手篇■ 内容提要:最简单的房间怎么写?NPC又怎么写?先看懂一些常用的参数? 第三 ...
随机推荐
- Fuel
1. fuel简介 fuel是Mirantis公司提供的一款开源的自动化安装部署OpenStack的工具.为OpenStack相关的社区项目和插件的部署和管理提供了一种直观的GUI驱动体验. Fuel ...
- javascript一个在网页上画线的库
文章;安利一个绘制指引线的JS库leader-line 一个在网页上划线的库感觉很不错.
- SparkSQL读写外部数据源--csv文件的读写
object CSVFileTest { def main(args: Array[String]): Unit = { val spark = SparkSession .builder() .ap ...
- Java 15周作业
题目1:编写一个应用程序,输入用户名和密码,访问test数据库中t_login表(字段包括id.username.password),验证登录是否成功. 题目2:在上一题基础上,当登录成功后,将t_u ...
- MSSQL行车列规则
行转列,是SQL中经常会遇到的一个问题,并且分为静态转换和动态转换,所谓静态转换即在转换的行数已知或固定:动态转换则为转换的行数不固定. 转换的方法一般采用case when语句或pivot(MSSQ ...
- FFT版题 [51 Nod 1028] 大数乘法
题目链接:51 Nod 传送门 数的长度为10510^5105,乘起来后最大长度为2×1052\times10^52×105 由于FFT需要把长度开到222的次幂,所以不能只开到2×1052\time ...
- Codeforces Round #605 (Div. 3) C. Yet Another Broken Keyboard
链接: https://codeforces.com/contest/1272/problem/C 题意: Recently, Norge found a string s=s1s2-sn consi ...
- Java静态static关键字
static关键字既可以修饰成员变量,也可以修改成员方法,修饰的成员变量和成员方法可以直接通过类名调用,也可以通过对象调用(其实即使是通过对象调用,也会被翻译成类名调用),建议通过类名调用. 成员方法 ...
- 开箱一个docker
1.docker 的出现? 1.1.环境切换配置麻烦 通常我们在开发环境写好代码,打个war/jar包,扔到tomcat下,就算是跑起来了:但是扔到生产环境就挂了,what?各种错误... 1.2.应 ...
- nginx syslog 配置
以下是一个简单的实践,主要是打算测试nginx 与graylog 的集成,为了简单都是使用容器运行的,同时也测试了 nginx 对于配置多个access_log 的处理 环境准备 docker-com ...