perl - Perl 5 中的父级和基级有什么区别?

标签 perl subclass pragma

似乎有一个名为 parent 的新编译指示其作用与 base 大致相同。 parent 做什么来保证新的(非核心)模块?我错过了什么吗?

最佳答案

base 试图做太多事情 - 自动处理加载模块,但也允许从已加载的类(可能是从名称不基于模块名称的文件)建立继承。为了让它发挥作用,一些黑客行为在某些情况下导致了令人惊讶的结果。引入了一个具有更清晰语义的新的替换 pragma parent,而不是破坏向后兼容性。

parent 自 5.10.1 起将成为核心模块。

更新:忘记base处理fields(如果您使用fields编译指示),parent 不行。

关于perl - Perl 5 中的父级和基级有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/876471/

相关文章:

perl - 在我打印其他内容之前,在 Perl 中打印一个点不会出现在屏幕上

c - 在 C 中不使用 "PACKED"编译器指令打包数据

c - 带有 _Pragma 的宏 - 括号

perl - 这个 Perl 代码有什么作用?

perl - DBIx 类行虚拟/非持久列

string - Perl 插值代码

java - 作业: explaining inheritance + override in Java

Swift - 检查两个对象是否具有相同类型或父类(super class)类型

java - 以下哪种方法在子类中是合法的?

c - 程序执行是否总是从 C 中的 main 开始?