Я недавно обновил свой проект с Visual Studio 2008 до Visual Studio 2010.
Включив анализ кода и опираясь на Release , я получаю предупреждение CA1811: Избегайте невостребованного частного кода.
Мне удалось сократить код до этого:
.h файл:
public ref class Foo
{
public:
virtual System::String^ ToString() override;
private:
static System::String^ Bar();
};
.cpp файл:
String^ Foo::ToString()
{
return Bar();
}
String^ Foo::Bar()
{
return "abc";
}
Предупреждение, которое я получаю:
CA1811:
Microsoft.Performance:
У 'Foo :: Bar (void)' нет
общественный или защищенный
звонящие.
Неважно, если Bar()
равно static
или нет.
Я пытался воспроизвести его на C #, но не могу. Я могу воспроизвести его только в C ++ / CLI.
Почему я получаю это предупреждение?
Это ошибка Visual Studio 2010?
UPDATE
Я решил открыть отчет об ошибке в Microsoft Connect .