ReSharper 2022.3 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 the 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

DeMorgan law

Replaces a conjunction or disjunction operation with its negated counterpart following the De Morgan's laws

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

Generates 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 the 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

Replaces decltype with the underlying type

Replace 'decltype(auto)' with explicit type declaration

Replaces 'decltype(auto)' with explicit type declaration

Replace explicit type with 'auto'

Replaces 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

Sorts #include directives

Sort member initializers by the order of initialization

Sorts 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

Substitutes macro call

Substitute macro call with all nested calls

Substitutes macro call with all nested calls

Substitute template type alias

Replaces template type alias with the underlying type

Substitute typedef

Replaces typedef with the underlying type

Substitute typedef and all nested typedefs

Replaces 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