将 Char 参数作为 "const" 传递是否有一些优势?
Is there some advantage in passing a Char parameter as "const"?
我 read 将参数作为 const
传递允许编译器针对结构化和字符串类型优化代码。
将 Char
参数声明为 const
是否有一些优势?
procedure Test(const AMyChar : Char);
而不是
procedure Test(AMyChar : Char);
如果是,与unicode migration有关系吗?
Is there some advantage in declaring a Char parameter as const?
不,值的传递方式没有区别。
您指的是传递引用计数类型的优化。当它们作为 const
传递时,编译器可以省略引用计数代码,因为它知道被调用者不能修改对象。但是 Char
没有引用计数,因此不适用。
或者,如果使用 const
,结构化类型可以通过引用而不是复制来传递。这可以避免一些内存复制,这对较大的类型具有性能优势。同样,这不适用于 16 位 Char
。
当您想了解如何将其传递给函数时,可以将 Char
视为整数类型。
我 read 将参数作为 const
传递允许编译器针对结构化和字符串类型优化代码。
将 Char
参数声明为 const
是否有一些优势?
procedure Test(const AMyChar : Char);
而不是
procedure Test(AMyChar : Char);
如果是,与unicode migration有关系吗?
Is there some advantage in declaring a Char parameter as const?
不,值的传递方式没有区别。
您指的是传递引用计数类型的优化。当它们作为 const
传递时,编译器可以省略引用计数代码,因为它知道被调用者不能修改对象。但是 Char
没有引用计数,因此不适用。
或者,如果使用 const
,结构化类型可以通过引用而不是复制来传递。这可以避免一些内存复制,这对较大的类型具有性能优势。同样,这不适用于 16 位 Char
。
当您想了解如何将其传递给函数时,可以将 Char
视为整数类型。