본문 바로가기
Programming/C++

C++ 함수

by ahhang0k 2021. 4. 8.

함수

특정한 작업을 수행하는 독립적인 부분

  • 함수 호출 : 힘수를 호출하여 사용하는 것

  • 함수 원형 : 컴파일러에게 함수에 대하여 미리 알리는 것 
    함수를 쓴부분의 매개변수 까지 긁어와서 맨위에 써주면 된다.ex) int sum(int a, int b);  ||  int sum(int,int);

  • 함수의 선언

 

출처 : http://www.tcpschool.com/cpp/cpp_function_basic

특징

  • 함수는 입력을 받으며 출력을 생성한다.
  • 필요할 때 마다 기능을 만들 필요가 없이 호출만 하면 되게 하는 것 
  • 동사목적어 이런식으로 이름을 짓는다.
  • void 이외의 반환형은 반드시 리턴
  • 리턴문은 반드시 한 개
  • 함수는 불러주면 변수에 값을 넣어주고 써야한다
  • 반환값 호출된 함수가 호출한 곳으로 작업의 결과값을 전달하는 것.
  • 매개변수 이름은 같은 것으로 지어주는 것이 좋다. (블럭이 달라서 같은 변수를 써도 에러가 나지 않음)

 

 

디폴트 매개변수 (함수 원형에서만 선언하면 된다.)

  • 인자를 전달하지 않아도 디폴트값을 대신 넣어주는 기능
  • 선언 : void sub(double value = 1.0);  // 함수 원형 정의시 ()안에 값을 넣어준다.
  • 디폴트 매개 변수는 뒤에서부터 앞쪽으로만 정의할 수 있다.
더보기

ex)

void sub(int p1, int p2, int p3=30);// OK!

void sub(int p1, int p2=20, int p3=30);// OK!

void sub(int p1=10, int p2=20, int p3=30);// OK!

void sub(int p1, int p2=20, int p3);// 컴파일 오류!

void sub(int p1=10, int p2, int p3=30);// 컴파일 오류!

 

 

중복함수(overloading functions)

같은 이름을 가지는 함수를 여러 개 정의하는 것

- 조건

  • 매개변수 개수와 자료형이 다를 경우, 순서가 다를 경우만 가능!
int square(int i)
{
     return i*i;
}
// 실수값을 제곱하는 함수
double square(double i)
{
     return i*i;
}

 

 

'Programming > C++' 카테고리의 다른 글

C++ 실습 함수 0409  (0) 2021.04.09
C++ 실습 함수 0408  (0) 2021.04.08
C++ 과제 제어문 13문제 - 0407  (0) 2021.04.08
반복문 - while  (0) 2021.04.07
C++ 실습 과제 0407  (0) 2021.04.07

댓글