如何让inherited自动插入到Delphi过程末尾而非开头?
如何让Delphi IDE将
inherited插入到重写方法的末尾 嘿,这个需求完全能实现!我之前也碰到过同样的困扰——默认把inherited放在方法开头,很容易让开发者搞错调用顺序,尤其是那些要求基类逻辑在子类执行之后才触发的场景。
下面是具体的设置步骤,直接修改Delphi IDE的代码生成模板就能搞定:
- 打开Delphi IDE,点击顶部菜单栏的 Tools -> Options
- 在弹出的选项窗口中,依次展开 Language -> Delphi -> Code Generation
- 找到「Method Implementation」区域里的 Override method body 模板
- 默认的模板内容是这样的:
procedure %classname%.%methodname%; begin inherited; end; - 把它修改成你需要的格式,让
inherited位于方法末尾,同时留出编写子类逻辑的空间:procedure %classname%.%methodname%; begin inherited; end; - 点击「OK」保存设置,之后再生成重写方法时,IDE就会自动把
inherited放在方法最后了
补充说明
- 这个修改会全局生效,所有通过IDE自动生成的重写方法(比如按
Ctrl+Shift+C生成实现、通过「Refactor -> Implement Methods」批量生成)都会使用新模板 - 如果某些特殊方法确实需要在开头调用
inherited,你只需要手动调整位置即可,这个模板只是帮你统一默认行为,减少出错概率
内容的提问来源于stack exchange,提问作者Jerry Dodge
相关产品推荐
相关产品推荐

