实现一个数字电路的脚本解释器(零)——约定

约定一些名词:

嵌套层或者层:一个函数调用就是一个层,当它调用下一个就会进入下一个层


变量,类,函数命名的约定:

每个单词第一个字母大写,除了特殊的ID,POP,PUSH例外。

变量和对象名称用下划线分隔单词,函数名称不需要。

临时变量(只在小范围起作用),开头用下划线来标明。


对于类中的指针,必须在构造函数中初始化为NULL。


错误定义:

#ifndef ERRORDEFINE_H
#define ERRORDEFINE_H

//内存分配错误
#define ERROR_NEW				100	//FileStreamList.AddFileStream()
									//FunctionList.AddFunction()
									//SymbolList.AddSymbol()
									//DataStack.PUSH()
									//CodeStack.PUSH()
//内存删除错误
#define ERROR_DELETE			101	//FunctionList.~FunctionList()
									//SymbolList.~SymbolList()
									//DataStack.POP()	注意是throw抛出错误
									//CodeStack.POP()	这个是返回错误,不是抛出
//未定义错误,通常是不可能执行的返回
#define ERROR_NOTDEFINE			102	//SymbolList.UpdSymbol()
//---------------------------------------------------------------------------------
//FileStreamList下的错误定义
//行不存在
#define ERROR_LINENOTEXIST		200	//FileStreamInfo.SetLine()
//没能取得行
#define ERROR_LINENOTGET		201	//FileStreamInfo.GetLine()
//文件打开失败
#define ERROR_OPENFAIL			202	//FileStreamList.AddFileStream()
//---------------------------------------------------------------------------------
//FunctionList下的错误定义
//名称定义无效
#define ERROR_NAMEINVALiD		300//FunctionList.AddFunction()
//函数已经存在
#define ERROR_FUNCTIONEXIST		301//FunctionList.AddFunction()
//函数不存在
#define ERROR_FUNCTIONNOTEXIST	302//FunctionList.GetFunction()
//---------------------------------------------------------------------------------
//SymbolList下的错误定义
//符号已经存在
#define ERROR_SYMBOLEXIST		400//SymbolList.AddSymbol()
//符号不存在
#define ERROR_SYMBOLNOTEXIST	401//SymbolList.GetSymbol()
//---------------------------------------------------------------------------------
//DataStack下的错误定义()
//数据堆栈为空
#define ERROR_DATASTACKEMPTY	500//DataStack.POP()
//---------------------------------------------------------------------------------
//CodeStack下的错误定义
//代码栈为空
#define ERROR_CODESTACKEMPTY	600//CodeStack.POP()


#endif


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值