가능한 중복 :
What is the difference between a method and a function는, 방법 및 기능의 차이 무엇
내 용어가 정확 얻기 위해 노력하고있어.
C++와 관련하여 메소드와 함수의 차이점은 무엇입니까?
메서드가 아무 것도 반환하지 않고 클래스에서 작업을 수행하기 만합니까? 함수에는 반환 값이 있습니까?
가능한 중복 :
What is the difference between a method and a function는, 방법 및 기능의 차이 무엇
내 용어가 정확 얻기 위해 노력하고있어.
C++와 관련하여 메소드와 함수의 차이점은 무엇입니까?
메서드가 아무 것도 반환하지 않고 클래스에서 작업을 수행하기 만합니까? 함수에는 반환 값이 있습니까?
C++ 표준에 관한 한 "메소드"는 없습니다. 이 용어는 클래스의 멤버 함수를 나타 내기 위해 다른 OO 언어 (예 : Java)에서 사용됩니다.
일반적으로 "메서드"와 "함수"를 대체로 사용하지만 대부분의 사람들은 "메서드"를 멤버 함수 ("자유 함수" 어떤 클래스의 멤버가 아닌).
OP는 C++ 표준과 전혀 관련이없는 것 같습니다. 98 개가 아니고 03 개가 아니라 11 개가 아닌. 그는 정확한 용어에만 관심이 있습니다. –
그리고 올바른 용어는 "방법"이 아니라 회원 기능입니다. –
@CaptainGiraffe : 귀하의 요지를 이해합니다. 그러나 표준에있는 것 이외의 "올바른 용어"는 없습니다. 다른 것은 그저 임시 방편 일뿐입니다. –
메서드는 클래스의 멤버 함수이지만 C++에서는 메서드 (Java와 같은 다른 언어에서 온 일부 프로그래머는 메서드라고 함)보다 멤버 함수라고합니다.
함수는 대개 클래스의 멤버가 아닌 자유 함수를 의미합니다.
구성원 함수가 함수 인 동안 함수는 반드시 멤버 함수 일 필요는 없습니다.
예 :
void blah() { } // function
class A {
void blah() { } // member function (what would be a "method" in other languages)
};
blah(); // free functions (non-member functions) can be called like this
A ainst;
ainst.blah(); // member functions require an instance to invoke them on
미안하지만 이건 내 제일 싫어 하는게 중 하나입니다. 메소드는 일반적인 OO 유형 용어입니다. 메서드는 C++에 존재하지 않습니다. C++ 표준을 열면 "메소드"에 대한 언급이 없습니다. C++은 다양한 맛의 함수를 가지고 있습니다.
적절한 용어를 위해 우리는 표준을 연구합니다. Stroustrup의 책을보세요. 그는 항상 메서드가 아니라 멤버 함수라고 부릅니다. –
메서드도 반환 값을 가질 수 있습니다.
메소드는 클래스의 함수입니다. 예를 들어 "car"클래스에는 "accelerate"메소드가 있습니다.
C++은이 구별을하지 않습니다. –
"메서드"라는 용어는 C++에서 사용되지 않고 멤버 함수입니다.
절차과 기능 사이의 차이점에 대해 생각해 본다면 C++의 차이점은 없습니다. 파스칼은 그 구별을위한 마지막 언어였습니다. (ADA는 나중에 만들어졌고 절차라는 용어를 사용했습니다. Brian Neal에게 감사드립니다.)
무효로 선언 된 모든 기능은 이전 어휘의 절차가됩니다.
멤버 함수는 복잡한 짐승이며, 함수는 간단한 함수입니다.
멤버 함수
C++은 이러한 구분을하지 않습니다. –
@ 무슨 구별? –
"방법"과 "기능"사이. –
@Ash Burlaczenko 나는 그 질문이 C++에만 국한된 것이 아니기 때문에 그 질문과 중복되는 것이라고 생각하지 않습니다. –
동의합니다. 중복이 아닙니다. 사실 나는 더 나은 질문이라고 생각합니다. 범위가 더 잘 정의 되었기 때문입니다. – joaerl