Re[8]: бессмысленные интерфейсы
От: AlexGin Беларусь  
Дата: 21.02.22 19:36
Оценка:
Здравствуйте, B0FEE664, Вы писали:

BFE>Что такое "проблема перекрёстных ссылок"?

BFE>class Node
BFE>{
BFE>public:
BFE>    Node(const std::string& sNameOfNode); // C-tor
BFE>   ~Node(); // D-tor
BFE>    std::string GetNameOfNode() const;
BFE>    const std::vector<SubNode>& GetVectOfChilds() const;
BFE>    void AddNode(SubNode p);
BFE>private:
BFE>    std::vector<SubNode> m_SubNodes; // Здесь ссылаемся на объект типа SubNode
BFE>};

BFE>class SubNode // Интерфейс узла:
BFE>{
BFE>public:
BFE>    std::string                 GetNameOfNode() const     {  return m_node->GetNameOfNode();  }
BFE>    const std::vector<SubNode>& GetVectOfChilds() const   {  return m_node->GetNameOfNode();  }
BFE>    void                        AddNode(SubNode node)     {  return m_node->AddNode(node);    }        
BFE>public:
BFE>    std::shared_ptr<Node> m_node; // Здесь ссылаемся на объект типа Node
BFE>};
BFE>

Вот отсюда и _проблема_перекрёстных_ссылок_

AG>так и для тестирования основы нашего проекта.

BFE>Про связь с тестированием я не понял.
AG>Вот насчёт тестов:
AG>https://chromium.googlesource.com/external/github.com/google/googletest/+/refs/tags/release-1.8.0/googlemock/docs/ForDummies.md
AG>https://chromium.googlesource.com/external/github.com/google/googletest/+/refs/tags/release-1.8.0/googlemock/docs/FrequentlyAskedQuestions.md#how-am-i-supposed-to-make-sense-of-these-horrible-template-errors

BFE>И где конкретно у них написано, что продакшен код надо замедлять, чтобы проще было писать тесты?


Кто и где предлагал замедлять продакшн код? Что есть фактор замедления?

P.S. Если ты предполагаешь, что вызов через таблицу виртуальных функций (vtable) вносит замедление,
то для аппаратуры последних 15 лет это уже не актуально.
Отредактировано 21.02.2022 21:09 AlexGin . Предыдущая версия . Еще …
Отредактировано 21.02.2022 19:48 AlexGin . Предыдущая версия .
Отредактировано 21.02.2022 19:43 AlexGin . Предыдущая версия .
Отредактировано 21.02.2022 19:37 AlexGin . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.