神秘的=delete:定义类功能
在 C 中,函数声明后面的 =delete 语法具有重要的用途。它表示显式删除函数。 C 11 中引入的此功能提供了对类行为的前所未有的控制。
什么=删除完成
当一个函数被删除时,它实际上被禁止调用,即,不能在该类的对象上调用它。当人们希望禁止复制或赋值操作或阻止某些转换时,这种方法特别有用。
例如,在以下代码片段中:
class my_class { ... my_class(my_class const &) = delete; ... };
构造函数 my_class(my_class const & ) 被故意标记为已删除,从而阻止创建复制构造函数。
扩展复制和删除之外的功能
除了删除函数的能力之外,C 还提供了额外的功能可以附加到函数声明的修饰符。其中包括:
自定义类行为
如所示,= delete 语法和其他修饰符使程序员能够精确定制类功能。通过删除函数或强制执行其他规定,类设计者可以有效地指导与其对象的交互,确保它们按预期运行。
以上是C 类定义中的 `= delete` 语法有什么作用?的详细内容。更多信息请关注PHP中文网其他相关文章!