我想知道哪个更有效率,使用Cstr()或object.toString().
我问这个的原因是因为我尽管所有的Cstr()完成是调用它所处理的对象上的.ToString()方法.
我问这个的原因是因为我尽管所有的Cstr()完成是调用它所处理的对象上的.ToString()方法.
但是当最近使用没有任何类型约束的泛型方法时,我不得不使用object.ToString()而不是CStr(object),以下仅仅是一个例子来说明问题.
Public Function IDFromObject(Of ID_TYPE)(ByVal value As ID_TYPE) As String Return value.ToString End Function
按预期编译,但以下没有使用Cstr().它给出了类型为ID_TYPE的编译错误值不能转换为字符串.但它显然可以使用.ToString()
Public Function IDFromObject(Of ID_TYPE)(ByVal value As ID_TYPE) As String Return CStr(value) End Function
从
here(不能说更好):
CStr is a keyword,whereas ToString is
a function (method). CStr is compiled
inline and it creates code depending
on the type of the passed object. It’s
mainly there for people being used to
it from prevIoUs VB versions. I
haven’t used CStr in .Net anymore
(because it’s not obvIoUs what it does
in which situations and it’s also not
very well documented).The difference depends on which ToString function you use. Every type can have it’s own implementation.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。