Вопросы по теме 'non-member-functions'
Частичная шаблонная специализация бесплатных функций - лучшие практики
Как должно знать большинство программистов на C ++, частичная специализация бесплатных функций по шаблону запрещена. Например, следующий код C ++ является недопустимым:
template <class T, int N>
T mul(const T& x) { return x * N; }...
4759 просмотров
schedule
26.10.2022
Перегрузка операторов функциями, не являющимися членами
Ответ на этот вопрос, кажется, ускользает от меня, но как вы относитесь к перегрузке функциями, не являющимися членами. Вы просто создаете функцию уровня программы, и везде, где существует прототип (или определение), оператор перегружается для этого...
1273 просмотров
schedule
25.06.2022
Правило 23. Эффективный C++. Предпочтение функциям, не являющимся членами, не дружественным функциям, а не функциям-членам.
Размышляя над некоторыми фактами о дизайне классов, в частности над тем, должны ли функции быть членами или нет, я заглянул в «Эффективный c++» и нашел пункт 23, а именно: «Предпочитайте функции, не являющиеся членами, и не являющиеся друзьями, а не...
14524 просмотров
schedule
27.04.2023
Имитация статических функций, объявленных и определенных в .cpp без файла класса с использованием GMOCK
file.h
int func(int);
file.cpp
static int call();
static void print(int x);
int func(int) {
int val = call();
print(val);
}
Здесь статические функции объявляются и определяются в том же файле file.cpp . Я не включил здесь определение...
6444 просмотров
schedule
01.07.2023
Может ли рефакторинг перегруженного оператора в функцию, не являющуюся членом, сломать какой-либо код?
Рассмотрим устаревший шаблон класса с перегруженными операторами сложения += и + .
template<class T>
class X
{
public:
X() = default;
/* implicict */ X(T v): val(v) {}
X<T>& operator+=(X<T> const& rhs)...
214 просмотров
schedule
21.08.2022
Ошибка GMock EXPECT_CALL, но тест возвращает OK при имитации функций C
Я пытаюсь издеваться над интерфейсом libusb C на основе ответа здесь: https://stackoverflow.com/a/41640864/1752391
Тесты выполняются нормально, если я действительно вызываю ожидаемые функции, но когда вызов функции закомментирован, тест показывает...
47 просмотров
schedule
25.07.2022