C#具有这个小巧的功能:https : //docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/classes-and-structs/extension-methods
这真的很酷。让我举一个例子:
我想向其中添加concat
方法,std::vector
但我不想继承它。此功能将非常有用。您是否在C ++中具有任何类似功能,可以在不继承原始类型的情况下向类型添加功能?我要求一种语言级别的功能。
在C ++中,这不是直接可能的。话虽如此,您可以实现一个函数,该函数将对a的引用std::vector
作为第一个参数,其用途与扩展方法相似(该扩展方法或多或少只是它的语法糖)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句