请教数据记录某字段的有效性检验?(100分)

  • 主题发起人 主题发起人 xjxjjx
  • 开始时间 开始时间
X

xjxjjx

Unregistered / Unconfirmed
GUEST, unregistred user!
DELPHI中有效性检验可以在两个时刻:
1、TABLE类的BEFOREPOST事件(对整条记录)
2、在字段写入记录缓冲区之前,每个字段调用ONVALIDATE事件(对当前操作的字段),如要抛弃当前值,可触发一个异常Raise Exception("提示信息");

请教在C++BUILDER中,对应以上第二个方法怎么产生异常达到此效果?
 
C中的异常机制和DELPHI的有点格式上的不同,以下是基本框架
try
{
throw Exception("信息"); //相当于raise
}
catch(const Exception &E) //相当于except,catch的参数类型指定接受何种异常
//这里是接受所有异常并引用该异常对象
//可用catch(...)来接受所有异常而不引用异常对象
//而DELPHI中是用except接受后再用ON来分类
{
ShowMessage(AnsiString(E.ClassName())+ E.Message); //如果用catch(...)来接受,则不能知道异常的类型和发出的Message
}

基本概念大体上是一样的。
 
异常是自己产生的,比如输入的数据符合字段要求但不符合我的要求则触发一个异常。不是程序出错的异常。
 
用throw来触发异常呀。
c builder中的throw就相当于delphi中的raise
 
谢谢!!!
 
接受答案了.
 
后退
顶部