在前一段时间处理一些图形代码时,我使用int作为底层坐标持有者编写了Rect和Region类,并且效果很好。Region是作为STL列表的简单类扩展实现的,并且只包含一个Rect列表。现在我还需要使用double作为基础坐标持有者的相同类型的类,并决定尝试将其模板化。所以我基本上以智能方式将“int”替换为“typenameT”并解决了问题。但是还有一个问题让我很困惑。我想通过对构成它的所有Rect进行并集来计算区域的边界框。这在未模板化时工作正常,但在模板化时g++在列表迭代器上阻塞。相关代码如下://Rectclassthatalwaysremainsnormalizedtempl