c++ - разница - отличие функции от метода java



В C++, в чем разница между методом и функцией (4)

Даже метод может иметь возвращаемое значение.

Метод является функцией класса. Например, у класса «автомобиль» есть метод «ускорить».

Возможный дубликат:
В чем разница между методом и функцией

Я пытаюсь правильно исправить свою терминологию.

В чем разница между методом и функцией в отношении C ++.

Является ли это тем, что метод ничего не возвращает и выполняет только преформы операций над своим классом; а функция имеет возвращаемое значение?


Извините, но это один из моих питомцев. Метод - всего лишь общий термин OO-типа. Методы не существуют в C ++. Если вы откроете стандарт C ++, вы не найдете никаких упоминаний о «методах». C ++ имеет функции различных ароматов.


Термин «метод» не используется в c ++, а скорее является функцией-членом .

Если вы думаете о различии между процедурой и функцией, то разница в c ++ не равна. Паскаль был в значительной степени последним языком, чтобы сделать это различие. (ADA была построена позже и использовала термин «Процедура», благодаря Брайану Нилу).

Любая функция, член или нет, объявленная как void, будет Процедурой в старой лексике.

Функция-член представляет собой сложный зверь, функция - простая функция.

Функция-член

  • является членом класса
  • может быть приватным
  • могут быть защищены
  • может быть приватным
  • может быть виртуальным
  • может быть чистым виртуальным

Что касается стандарта C ++, то нет такой вещи, как «метод». Эта терминология используется в других языках OO (например, Java) для обозначения функций-членов класса.

В общем случае вы обнаружите, что большинство людей будут использовать «метод» и «функцию» более или менее взаимозаменяемо, хотя некоторые люди будут ограничивать использование «метода» для функций-членов (в отличие от «свободных функций», которые не являются членов класса).





c++