"D2D1"中的"1"代表什么?

Pas*_*sha 4 winapi direct2d

D2D1是Win32中Direct2D技术的命名空间.但是我不明白这个名字的词源.该D2D部分最有可能是指d I整流器 2D,但最后1个谜题我...

也有不少与"1"类作为后缀:IDWriteFactory1,IDWriteFont1,IDWriteTextLayout1等-什么是他们的目的,并从差异无后缀的相似的对象?

Rem*_*eau 5

COM接口通常以不断增加的数字命名,以允许版本控制.一旦COM接口公开发布,COM规则就要求不再允许更改接口,或者与现有代码断开兼容.如果需要添加新功能,则必须公开新接口.我们IDWriteFactory1举个例子.今天,这是第一个发布界面.在将来,可能IDWriteFactory2会添加IDWriteFactory1新方法.现有的代码被保留,因为他们不知道任何事情IDWriteFactory2,但新的代码可以创建一个IDWriteFactory1对象,并对其进行查询,看它是否支持IDWriteFactory2,如果这样的话使用较新的方法需要.

命名D2D1空间的命名可能类似.它可能用于版本控制(Direct2D v1?).也许将来会有一个D2D2(Direct2D v2)命名空间添加到不适合现有Direct2D架构的东西中.谁知道肯定.