ReSharper 2022.2 Help

Context actions for C++

ReSharper provides the following context actions for Cpp:

Name

Description

Add '= default' specifier to a function without definition

Marks a function without definition as defaulted.

Add '= delete' specifier to a function without definition

Marks a function without definition as deleted.

Add braces

Adds braces around statement.

Add pure specifier to a virtual function without definition

Marks a virtual function without definition with a pure specifier.

Arrange cv-qualifiers

Arranges const and volatile qualifiers in a declaration according to the syntax style.

Arrange 'virtual' and 'override' specifiers on an overriding function

Arrange 'virtual' and 'override' specifiers on an overriding function according to the syntax style.

Convert #include directive from angle-bracket to quoted form

Convert #include directive from angle-bracket to quoted form.

Convert #include directive from quoted to angle-bracket form

Convert #include directive quoted to angle-bracket form.

Convert '?:' expression to 'if' statement

Converts a ternary conditional operator to an equivalent 'if' statement.

Convert a type alias into a typedef declaration

Replaces a type alias with an equivalent typedef declaration.

Convert a typedef declaration into a type alias

Replaces a typedef declaration with an equivalent type alias.

Convert an enum to a string

Creates a function from a template that converts an enum to a string.

For more information, see convert enum to string (generate enum-to-string helper).

Convert 'if' statement to '?:' expression

Converts an 'if' statement to an equivalent ternary conditional operator.

Convert to nested namespace definition

Replaces a series of nested namespaces with a single namespace using the nested namespace definition syntax.

Convert to nested namespaces

Replaces a nested namespace definition with a series of nested namespaces.

Convert to non-raw string literal

Converts raw string literal to non-raw.

Convert to raw string literal

Converts string literal to raw.

Convert to regular return type

Converts a trailing return type into a regular return type in a function declaration.

Convert to trailing return type

Converts a regular return type into a trailing return type in a function declaration.

Create derived class

Creates a derived class.

Create derived class

Creates a derived class.

Create derived interface

Creates a derived interface.

Create derived interface class

Creates a derived interface class.

Create derived interface struct

Creates a derived interface struct.

Create derived ref class

Creates a derived ref class.

Create derived struct

Creates a derived struct.

Document entity

Generate documentation for a function, macro definition, namespace, class, enum, typedef, alias declaration, global variable or a class member from a template.

For more information, see document entity.

Flip operator arguments

Flips left and right operands for selected operator, e.g. '0 == i' to 'i == 0'.

Flip relational operator

Flips operands of binary relational operators.

Format compound statement

Formats the compound statement under the caret.

Generate case-stubs

Generates missing case statements for the given switch statement.

For more information, see generate missing case statements.

Generate constructor

Generate constructor.

Generate definition by declaration

Generate definition by declaration.

Generate definitions by declarations

Generate definitions by declarations.

Generate inline definition

Generate inline definition.

Generate missing members

Generate missing members.

Generate mock methods

Generate mock methods.

Generate overriding members

Generate overriding members.

Initialize field from constructor parameter

Initializes field from constructor parameter.

Invert '?:' condition

Inverts guard condition of a ternary statement and swaps the branches' code accordingly.

Invert 'if' statement

Inverts guard condition of an 'if' statement and swaps the branches' code accordingly.

Join declarations

Joins several declarations into a declaration with multiple declarators.

Make member initializer a default member initializer

Moves member initializer from member initializer list to default member initializer.

Merge nested 'if' statements

Merges two nested 'if' statements to a single 'if' statement that checks conjunction of the original conditions.

Move function implementation out of class scope

Moves function implementation out of class scope.

For more information, see move implementation out of class scope.

Move function implementation to source file

Moves function implementation to a source file.

Move function implementations

Move function implementations.

Negate logical expression

Negates logical expression.

Remove braces

Removes unnecessary braces around one or more statements in the code.

Replace 'auto' with explicit type declaration

Replaces 'auto' with explicit type declaration.

Replace decltype

Replace decltype with the underlying type.

Replace 'decltype(auto)' with explicit type declaration

Replaces 'decltype(auto)' with explicit type declaration.

Replace explicit type with 'auto'

Replace an explicit type in a variable declaration with 'auto'.

Replace slashes in an include file path

Replaces slashes in an include file path according to the syntax style.

Replace UNREFERENCED_PARAMETER to [[maybe_unused]]

Replace macro UNREFERENCED_PARAMETER to attribute [[maybe_unused]].

Sort #include directives

Sort #include directives

Sort member initializers by the order of initialization

Sort member initializers in an initializer list by the order of initialization.

Specify template arguments explicitly

Specifies template arguments explicitly.

Split declaration and assignment

Splits a declaration with an assignment into two separate statement.

Split declaration with multiple declarators

Splits declaration containing multiple declarators into multiple declarations.

Substitute macro call

Substitute macro call.

Substitute macro call with all nested calls

Substitute macro call with all nested calls.

Substitute template type alias

Replace template type alias with the underlying type.

Substitute typedef

Replace typedef with the underlying type.

Substitute typedef and all nested typedefs

Replace typedef and all nested typedefs with the underlying type.

Switch between typename and class keywords

Replaces typename with class and vice versa in template parameter definition.

Last modified: 19 August 2021