CLion教程-覆盖函数
您可以通过从预定义模板生成必要的代码来覆盖父类的任何函数。CLion会创建一个包含对超类函数调用的存根,让开发人员在方法体中提供一些有意义的源代码。
覆盖超类的成员函数
- 在Code菜单中,点击Override methods(Ctrl0O)。或者,您可以在类文件的任何位置右键单击,然后点击Generate AltInsert,选择Override methods。
- 选择要覆盖的函数(按住Shift或Ctrl键进行多重选择)。该列表不包括已经被覆盖或无法从当前子类访问的函数。
- 点击确定并提供函数体的源代码。
修改函数体
用于覆盖函数的代码模板(Overridden method body)接受来自文件头包含模板的预定义模板变量(例如${USER}
、${DATE}
等)。
例如,考虑以下代码模板:
#if ($CALL_SUPER != "")#if ($RETURN_TYPE != "void")return#end $CALL_SUPER;#end
// TODO ($USER, $DATE):要更改函数体,请使用设置 - 编辑器 - 文件和代码模板。
此模板会展开为以下代码:
int Calendar::getYear() {
return 0;/// TODO (wombat, 1/22/2015):要更改函数体,请使用设置 - 编辑器 - 文件和代码模板。
}