Я пытаюсь получить виджеты Google Mocks, но я ударил об этом, пытаясь высмеять не виртуальные методы. У меня есть класс Socket, который я хочу высмеять. Он имеет не виртуальный метод, называемый «записи», который принимает аргументы:Ошибки при генерации не виртуального метода
class Socket {
public:
int write(const unsigned char* buffer, size_t bufferLength) const;
}
Так я создаю Пробный класс, как указано поваренной книги:
class MockSocket {
public:
MOCK_CONST_METHOD0(write, int(const unsigned char* data, size_t dataLength));
};
Но это не компилируется. Он генерирует следующие ошибки:
error: size of array ‘this_method_does_not_take_0_arguments’ is negative
error: no matching function for call to ‘testing::internal::FunctionMocker<int()(const unsigned char*, size_t)>::Invoke()’
error: no matching function for call to ‘testing::internal::FunctionMocker<int()(const unsigned char*, size_t)>::With()’
Может ли кто-нибудь сказать мне, почему?
Спасибо.