CLion 2018.2 Help

Overriding Functions

You can override any function of a parent class by generating necessary code from a predefined template. CLion creates a stub that contains a call to the function of the superclass, leaving the developer with the task of providing some meaningful source code in the method's body.

To override a method of a superclass:

  1. On the Code menu, click Override methods (Ctrl+O). Alternatively, you can right-click anywhere in the class file, then click Generate (Alt+Insert), and select Override methods.
  2. Select the functions to override. The list of methods does not include the methods that are already overridden, or cannot be accessed from the current subclass.
    cl override
  3. Click OK and provide the source code for the method body.

    Use the gutterIconOverriding icon that marks the overriding method in the left gutter to view the name of the base class, and to open the overridden method declaration.

Change function body

The code template used for overriding functions (Overridden method body) accepts predefined template variables from the File Header include template (such as, ${USER}, ${DATE}, etc.)

For example, consider the following code template:

#if ($CALL_SUPER != "")#if ($RETURN_TYPE != "void")return#end $CALL_SUPER;#end // TODO ($USER, $DATE):To change the function body, use Settings - Editor - File and Code Templates.

The template expands into the following code:

int Calendar::getYear() { return 0;/// TODO (wombat, 1/22/2015):To change the function body, use Settings - Editor - File and Code Templates. }
Last modified: 16 June 2018