可怜呀,我没分了!一个应该算是编码规范的问题。(5分)

  • 主题发起人 主题发起人 com
  • 开始时间 开始时间
C

com

Unregistered / Unconfirmed
GUEST, unregistred user!
比如说我要调用一个参数是Integer的函数,那么我应该是在调用时判断参数是否Integer
还是应该写在这个函数里来判断传入的参数是否是Integer呢?如果两面都写判断的话显然
是影响效率的(实际应用情况不一定是判断是否Integer,所以请勿说什么这个判断不影响
效率的废话!谢谢!)
我只是想知道通常情况下比较正规的编码方式。
你们通常怎么写呢?
 
我是在函数里判断。显的独立一点。
 
在该函数的声明和实现里肯定是把该参数声明为Integer和当成Integer来用的,
所以在函数里不用判断是否是Integer,而是在调用它时判断将要传入的参数是否是
Integer类型的。
假如你传入的参数类型是不固定的,如Variant型的,然后大家约定要当成Integer
来处理,则最好两边都加判断,尤其是当你的这个函数是有可能用作其他用途时。
 
说的比较乱,我的意思时判断参数是否合法 :)
 
假如你是要判断参数是否合法,最好还是放在函数里,保持函数相对的独立性
如果只是判断类型,则放在调用是判断比较好。
BTW:我说的怎么乱了?
 
我是说我写的乱。
其实最终我是想知道调用WINAPI及Delphi的函数时用不用自己判断参数是否合法?
 
我认为要判断。
 
老兄,我想你可能没有搞清楚几样事情:
1.调用程序是你写的,你当然知道要传什么样的参数进去啊,还判断什么?
2.你所调用的函数(WinAPI和Delphi函数)肯定是有声明的,你照着声明调用,难道还
会传错么?
3.假如该函数的参数声明是Integer,而你调用时却传了个String进去,那编译时就会
报错的,根本无法链接成EXE的。
 
再补充一句:
如果不仅仅是对类型作判断,如范围等有限制,则这种判断通常会在函数里面实现,
否则这个函数就编的不安全。
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
900
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部