D2009中的泛型是否可用于大型项目?

jpf*_*ius 8 delphi generics delphi-2009

我非常沮丧.我正在使用Delphi 2009,并且很高兴在这个版本的Delphi中包含泛型.一切都在一开始就很好用,但是现在我在整个地方使用泛型我遇到了问题 - 大多数时候是一些内部错误,我甚至都看不到它们究竟在哪里造成的.我尝试多次重构代码以避免泛型问题,但总是遇到新的问题.

现在我决定完全删除泛型并使用一些动态强制转换来专门化我的类.不是很激动,但我没有看到另一种选择.我不能花一天时间追踪Delphi的内部编译错误......

是否有人在大型项目中使用泛型而没有遇到这样的问题?也许是我的错吗?或者只是不可能在复杂的项目中使用它们?

我希望D2010修复所有这些东西.

Mor*_*tel 12

我在Delphi 2009中广泛使用泛型,我可以说这并不容易,因为你经常需要在ICE周围工作.更糟糕的是,泛型甚至搞乱了链接器,即你不能在包中真正使用它们(C++ Builder包除外).

所有这些麻烦似乎都在Delphi 2010中消失了; 由于仿制药,我几乎没有看到过ICE.我需要我的代码与2009年和2010年合作:(


Mas*_*ler 7

D2009中的泛型支持起初非常糟糕.更新3修复了很多东西,但不是一切,并且在Generics.Collections.pas中至少留下了一个严重的错误.在某些方面,它实际上变得更糟,因为现在不是在编译器在某些通用构造上扼流时给你一个语法错误,你经常会得到一个内部编译错误而你不知道是什么导致它.

它在2010年得到了相当大的改善.在相当模糊的情况下仍然存在一些与仿制药相关的问题,但只要你不使用包装或将普通内容放入课堂助手或奇怪的东西中,它们通常都是安全的.像那样.

底线:如果您想使用它们,请升级到2010.