Есть ли термин для функции, которая действует как «метод экземпляра» в C? - PullRequest
3 голосов
/ 20 января 2020

В C нет классов, но достаточно просто создать нечто подобное, определив структуру, которая содержит все свойства "класса", и представив его методы функциями, которые принимают указатели на указанную структуру в качестве своих. Первые аргументы. Я нахожусь в процессе документирования файла заголовка этой формы.

Я пытаюсь выяснить, как обращаться к такого рода функциям без использования объектно-ориентированной терминологии, такой как «метод». Я мог бы просто придумать свое собственное имя и определить его, но, учитывая, насколько распространены такие функции, я предполагаю, что уже есть стандартный способ обращения к ним. Я прав? Если да, то как я к ним обращаюсь?

Ответы [ 2 ]

0 голосов
/ 20 января 2020

Я бы использовал и «функцию», и «метод».

«Функция» будет относиться к реализации, поскольку на самом деле это функция, а не метод.

«Метод» будет ссылаться на то, как используется функция, поскольку вы хотите эмулировать OOP, и вы даже вызываете ее как-будто это будет метод. Конечно, вы не сможете использовать расширенные OOP функции «метода», но вы согласились с этим, когда решили использовать C вместо C ++.

0 голосов
/ 20 января 2020

Я бы назвал их методами.

Если Руст может вызвать его Методы , конечно, вы можете.

...