﻿# V660\. Program contains an unused label and function call: 'CC:AA\(\)'\. Probably meant: 'CC::AA\(\)'\.

Анализатор обнаружил потенциальную ошибку, когда из\-за опечатки написано ':', хотя необходимо '::'\.

В коде метода класса найдена неиспользуемая метка\. Вслед за этой меткой следует вызов функции\. Анализатор считает опасным, если функция с таким именем находится в одном из базовых классов\.

Рассмотрим пример:

```cpp
class Employee {
public:
  void print() const {}
};

class Manager: public Employee {    
  void print() const;
};

void Manager::print() const {
  Employee:print();
}
```

С большой вероятностью строчка 'Employee:print\(\);' является ошибочной\. Ошибка заключается в том, что будет вызвана функция не из класса 'Employee', как планировалось, а из своего же класса 'Manager'\. Для исправления ошибки достаточно заменить ':' на '::'\.

Корректный вариант кода:

```cpp
void Manager::print() const {
  Employee::print();
}
```



Рассмотрим ещё один пример:

```cpp
namespace Abcd
{
  void Foo() {}
}

class Employee {
  void Foo() {}
  void X() { Abcd:Foo(); }
};
```

Здесь ошибка заключается в том, что должна была быть вызвана функция, находящаяся в области видимости 'Abcd'\. Ошибку легко исправить:

```cpp
void X() { Abcd::Foo(); }
```