请问你看完这个有何感想?关于Delphi中的类型转换?? Delphi / Windows SDK/APIhttp://www.delphi2007.net/DelphiBase/html/delphi_20061215172228146.html
IntToStr(abs(StrToInt(BoolToStr(iADOQuery.FieldValues['ifaccept']))))
因为ifaccept字段是bit类型的,数据库里面的值如果是1的话,现在我要使用转换的方法取得一个1,而不是用if来进行判断,最后竟然写成上面的一堆代码!!
请问有更简单的办法吗?? 总体感觉Delphi的类型转换审查太严,不想C++ Builder中的用着爽!!
更奇怪的是BoolToStr函数如果里面的是1的话,返回的是-1,我真搞不明白,borland的工程师为什么要这样,直接给个1不更好吗?
各位有何看法,讲讲。
iADOQuery.FieldValues('ifaccept').AsString
or
IntToStr(Ord(iADOQuery.FieldValues('ifaccept').AsBoolean))
只能说你的代码很有想像力!
SetLength(TrueBoolStrs, 1);
SetLength(FalseBoolStrs, 1);
TrueBoolStrs[0] := '1';
FalseBoolStrs[0] := '0';
BoolToStr(iADOQuery.FieldValues('ifaccept').AsBoolean, True);