泛型 与 实体类的相互转换


问题:

当我强制转换实体类型到泛型的,或者将泛型强制转换为实体类型,会提示无法转换。

如下面代码:

PersonInfor 为实体类,T为泛型
 public int GetPersonMsgW_<T>(ref T pInfo, string imagePath)
  {
//泛型转换为实体类型
object temp = pInfo; PersonInfor pi = (PersonInfor)temp;
//实体类型转换为泛型
temp = pi; pInfo = (T)temp; return 0; }

大家看到了把,很明显,我将泛型或者实体类型先赋值给中间变量 object,然后用这个中间变量进行强制转换。

究其原因,泛型为变数,不能确定它是哪种类型,顾不能直接转换,而赋值给中间变量就间接的 确定了它的类型,顾能进行转换。

以上为个人见解,不对之处也请指正!!


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM