Advertencia C26460
El argumento de referencia 'argument' para la función 'function' se puede marcar como
const
(con.3).
Comentarios
Pasar un objeto por referencia indica que la función tiene el potencial de modificar el objeto. Si no es la intención de la función, es mejor marcar el argumento como una referencia const.
Nombre del análisis de código: USE_CONST_REFERENCE_ARGUMENTS
Ejemplo
struct MyStruct
{
void MemberFn1() const;
void MemberFn2();
};
void Function1_Helper(const MyStruct&);
void Function1(MyStruct& myStruct) // C26460, see comments below.
{
myStruct.MemberFn1(); // The member function is marked as const
Function1_Helper(myStruct); // Function1_Helper takes a const reference
}
void Function2(MyStruct& myStruct)
{
myStruct.MemberFn2(); // MemberFn2 is non-const and has the potential to modify data
}