On this page:
- Evaluating expressions or code fragments in a stack frame
- Evaluating arbitrary expressions
- Evaluating expressions in the editor
In addition to regular expressions, you can also evaluate operator expressions, lambda expressions, and anonymous classes.
The following evaluation modes are available:
- A method can be invoked within the Expression Evaluation dialog only if the debugger has stopped at a breakpoint, but has not been paused.
- Expression Evaluation can only be "single-level". In other words, if CLion stops at a breakpoint within a method called from the Expression Evaluation, you cannot use the Expression Evaluation feature again.
Evaluating expressions or code fragments in a stack frame
To evaluate an expression or a code fragment in a stack frame, do the following:
- In the Frames pane, select the thread where you want an expression to be evaluated.
- Invoke the Evaluate Expression command in one of the following ways:
- Type the expression to evaluate in the text field and click Evaluate.
Evaluating arbitrary expressions
- Open the Evaluate Expression dialog box in one of the following ways:
- In the
dialog box, specify the expression you want to evaluate. Do one of the following:
- In the Expression field, type the expression in question or choose one of the previously evaluated expressions from the drop-down list.
- To evaluate a code fragment, click the Code Fragment Mode button and fill in the Code Fragment text box.
- Click the Evaluate button. The Result read-only field shows the evaluation output. If the specified expression cannot be evaluated, the Result field explains the reason.
Evaluating expressions in the editor
During a debugger session, the value of any expression is shown in the tooltip every time you hover your mouse pointer over it.
There are two ways to evaluate an expression quickly:
By using the Show value tooltip on code selection functionality:
- In the Debugger | Data Views settings page, enable the Show value tooltip on code selection option.
Select a code fragment with the mouse, or by clicking
Ctrl+W. A tooltip with the expression value automatically appears under the selection and changes each time you change the selection:
- By manually invoking the tooltip with the expression value: