Я имею дело с некоторым кодом (другого автора, с которым я не могу связаться), который имеет две функции: функцию A и функцию B.
Функция B объявлена во включенном заголовочном файле как открытая функция, но функция A отсутствует в заголовочном файле.
В соответствующем файле .cpp определены обе функции, A и B. Однако единственная цель функции B - вызвать функцию A (функция A не существует в этом заголовочном файле).
Пожалуйста, помогите мне понять, в чем смысл этого.
Моя первоначальная гипотеза состоит в том, что функция B используется в качестве «вызывающей стороны», аналогичной функции «установщика» для закрытой переменной. Я также замечаю конкретное использование оператора разрешения области видимости. Хотя моя путаница возникает из-за того, что функция А не является частной функцией.
// ~~~~ header file:
class theClass {
public:
long functionB(parameters);
private:
// empty
};
// ~~~~ .cpp file:
#include "theClass.h"
long functionA(parameters)
{
relevant_statements // but trivial to my question
return(relevant_variable);
};
long theClass::functionB(parameters)
{
return(functionA(parameters));
};
Нет ошибок при компиляции кода, поэтому, пожалуйста, игнорируйте любые синтаксические ошибки в моем псевдокоде. Мой вопрос касается инкапсуляции функций и соглашения программистов.