Language agnostic 在大型项目中,用户定义的类型超过65536种是否合理?

Language agnostic 在大型项目中,用户定义的类型超过65536种是否合理?,language-agnostic,class,projects,struct,Language Agnostic,Class,Projects,Struct,我正在考虑一些与运行时类型信息相关的东西,我想从比我工作的项目大得多的程序员那里得到一些反馈。期望任何程序在单个项目中拥有超过65536(2^16)个用户定义类型(类和结构)是合理的吗?这并不意味着65536个实例,它意味着65536个类型。如果编译器在任何一个项目中将您的类/结构限制为65536个,那么在实践中会有任何影响吗?谁说类型信息==16位数字?谁说类型信息==16位数字?不会,因为在这一点上,您应该对项目进行强解耦。只有“面向公众”的类型需要在项目之间相互交互。然后限制变为:每个项目

我正在考虑一些与运行时类型信息相关的东西,我想从比我工作的项目大得多的程序员那里得到一些反馈。期望任何程序在单个项目中拥有超过65536(2^16)个用户定义类型(类和结构)是合理的吗?这并不意味着65536个实例,它意味着65536个类型。如果编译器在任何一个项目中将您的类/结构限制为65536个,那么在实践中会有任何影响吗?

谁说类型信息==16位数字?

谁说类型信息==16位数字?

不会,因为在这一点上,您应该对项目进行强解耦。只有“面向公众”的类型需要在项目之间相互交互。然后限制变为:每个项目最多2^16个类型,所有项目最多2^16个面向公众的类型。

否,因为在这一点上,您应该强烈解耦项目。只有“面向公众”的类型需要在项目之间相互交互。然后,限制为:每个项目最大2 ^ 16个类型,最大的2个16公共面向所有项目。

< P>我认为这是对环境的约束。在某些系统中,类型是自动生成的。在这些情况下,将创建大量类型。即使这些都不在65536附近,你为什么要施加这样的限制


在所有现代应用程序/系统中,所有对象的计数仅受系统内存的限制。有任何其他限制是一个倒退。

< P>我认为这是对环境的约束。在某些系统中,类型是自动生成的。在这些情况下,将创建大量类型。即使这些都不在65536附近,你为什么要施加这样的限制


在所有现代应用程序/系统中,所有对象的计数仅受系统内存的限制。有任何其他限制都是倒退。

这是一个优先级问题。在当前项目范围内,用于实现“无限”数量类型的时间(和代码量)是否合理

您还希望考虑项目/编译器增长时的可维护性。

我想说的是,如果你不是专门针对这一点的话,那么像肥胖这样的特殊情况并不能真正证明考虑到这一点。你的目标受众是谁

更新:
在某些情况下,为了在其他方面(如内存、执行速度等)提高效率,您可能真的想限制自己,只要有明确的文档记录,我认为您应该选择适合您特定需要的内容。

这是一个优先级问题。在当前项目范围内,用于实现“无限”数量类型的时间(和代码量)是否合理

您还希望考虑项目/编译器增长时的可维护性。

我想说的是,如果你不是专门针对这一点的话,那么像肥胖这样的特殊情况并不能真正证明考虑到这一点。你的目标受众是谁

更新:
在某些情况下,为了在其他方面(如内存、执行速度等)变得更高效,您可能真的想限制自己,只要有明确的文档记录,我认为您应该选择适合您具体需要的内容。

对于我正在考虑的方案,这是一个假设。嗯,然后将其设为32位数字-每个类ois多出2个字节不会引起很多问题。这与垃圾收集器存储的RTTI指针有关,因此每个实例多出2个字节。这是一个假设,对于我正在考虑的方案。嗯,然后将其设为32位数字-每个类ois额外2个字节不会引起很多问题。这与垃圾收集器存储的指向RTTI的指针有关,因此每个实例将额外2个字节。