🌈 프로그래밍/C++

[C++] 1.1.9 함수

반응형

 

 

안녕하세요? 수구리에요.

 

 

이번 포스팅에서는 프로그래밍! 하면 빼놓을 수 없는 함수에 대하여 알아보도록 하겠습니다.

 

 

내용이 많지는 않으니 지적은 환영입니다!

 

 

  • 프로그래밍을 하다가 규모가 큰 프로그램이면 가독성을 높이기 위해 함수 단위로 간결하게 나눠서 작성해야 한다.
  • 그리고 하나의 함수는 하나의 동작을 기본으로 작성하는 것이 좋다.

 

함수를 선언하는 문장을 함수 프로토타입(function prototype) 또는 함수 헤더(function header)라고 한다.

구체적인 내용은 보지 않고 함수에 어떻게 접근하는지에 대한 형식만 방식만 표현한다는 의미이다.

또한 함수의 리턴 타입을 제외한 함수 이름과 매개변수 목록을 함수의 시그니쳐(function signature)라고 한다.


 

 

// 함수 선언 방법
void myFunc(int i, char c);

// 함수 구현 방법
void myFunc(int i, char c){
    std::cout << "val i is " << i << std::endl;
    std::cout << "val c is " << c << std::endl;
}

// 함수 호출 방법
myFunc(8, 'a');
myFunc(someInt, 'b');
myFunc(5, someChar);

 

 

// 두 수를 더한 결과를 리턴하는 함수
int addNum(int a, int b){
    return a + b;
}

// 함수 호출
int sum = addNum(5, 3);

 

 

함수 리턴 타입 추론

  • 함수의 리턴 타입을 컴파일러가 알아서 지정할 수 있다. 키워드는 auto를 사용한다.
auto addNum(int a, int b){
    return a + b;
}
  • 컴파일러는 return 문에 나온 표현식의 타입에 따라 리턴 타입을 추론한다.

 

이상 함수에 대한 포스팅이었습니다.

 

다음 포스팅에서 보아용

반응형

'🌈 프로그래밍 > C++' 카테고리의 다른 글

[C++] 1.1.10 C 스타일의 배열  (0) 2021.08.13
[C++] 1.1.11 std::array  (0) 2021.08.13
[C++] 1.1.8 논리 연산자  (0) 2021.08.13
[C++] 1.1.7 조건문  (0) 2021.08.12
[C++] 1.1.6 타입  (0) 2021.08.12