关于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又怎么写?先看懂一些常用的参数? 第三 ...
随机推荐
- wordpress模板加载顺序汇总
我们要创建一个新的wordpress模板需要先了解有哪些页面模板,这些页面模板的文件是什么?它们是怎么工作的?下面ytkah汇总了一些常用的wordpress模板结构方便大家查找 首页 首先WordP ...
- flume的sink写入hive表
flume的配置文件如下: a1.sources=r1 a1.channels=c1 a1.sinks=s1 a1.sources.r1.type=netcat a1.sources.r1.bind= ...
- 如何使用powerdesigner导出sql脚本
使用power designer可以很方便的对数据库设计进行管理,并且能够更方便的查看表与表之间的关系.同时,还可以对设计好的数据库直接导出创建脚本,根据不同的数据库实例导出对应的创建脚本,然后根据脚 ...
- php 正则表达示中的原子
原子 原子是正则表达示里面的最小单位,原子说白了就是需要匹配的内容.一个成立的正则表达示当中必须最少要有一个原子.大理石平台精度等级 所有可见不可见的字符就是原子 说明:我们见到的空格.回车.换行.0 ...
- 洛谷 P1379 八数码难题 题解
我个人感觉就是一道bfs的变形,还是对bfs掌握不好的人有一定难度. 本题思路: 大体上用bfs搜,用map来去重,在这里只需要一个队列,因为需要较少步数达到的状态一定在步数较多的状态之前入队列. # ...
- BZOJ 5469: [FJOI2018]领导集团问题 dp+线段树合并
在 dp 问题中,如果发现可以用后缀最大值来进行转移的话可以考虑去查分这个后缀最大值. 这样的话可以用差分的方式来方便地进行维护 ~ #include <bits/stdc++.h> #d ...
- js中回调函数,promise 以及 async/await 的对比用法 对比!!!
在编程项目中,我们常需要用到回调的做法来实现部分功能,那么在js中我们有哪些方法来实现回调的? 方法1:回调函数 首先要定义这个函数,然后才能利用回调函数来调用! login: function (f ...
- CF1172E Nauuo and ODT
CF1172E Nauuo and ODT 神仙题orz 要算所有路径的不同颜色之和,多次修改,每次修改后询问. 对每种颜色\(c\)计算多少条路径包含了这个颜色,不好算所以算多少条路径不包含这个颜色 ...
- 洛谷 P4017 最大食物链计数 题解
P4017 最大食物链计数 题目背景 你知道食物链吗?Delia生物考试的时候,数食物链条数的题目全都错了,因为她总是重复数了几条或漏掉了几条.于是她来就来求助你,然而你也不会啊!写一个程序来帮帮她吧 ...
- 【JOISC2018|2019】【20190622】mergers
题目 一\(n\)个节点的树,节点被分成\(k\)个集合,\(i\)属于\(S_i\), 一条边是可划分的当且仅当左右两边的子树不存在相同集合的点 你一次可以合并两个集合,求最少的操作次数使得所有边都 ...