함수
void hello(){
cout << "안녕하세요\n";
}
// return 값이 없을때, void
int three(){
return 3
}
// 함수명 앞에 return 값의 형을 선언해줘야 함.
int sum(int x, int y){
return x+y;
}
//python
// def hello():
// print("안녕하세요")
//
// def three():
// return 3
//
// def sum(x, y):
// return x+y
재귀
void func(){
func() // void 안붙여도 됨.
}
인라인 함수
#include <iostream>
using namespace std;
int max(int x, int y){
if(x>y)
return x;
else
return y;
}
// 인라인 함수
inline int max(int x, int y){if(x > y) return x; else return y;}
함수 프로토타입 선언
#include <iostream>
using namespace std;
// max 함수 선언; 함수 프로토타입 선언부.
// 프로토타입이 선언되어 있으면, max 함수가 main 함수 뒤에 있어도 실행가능함.
int max(int x, int y);
int main()
{
int num1, num2, ans;
ans = max(num1, num2);
cout << ans;
return 0;
}
int max(int x, int y){
if(x > y)
return x;
else
return y;
}
기본 인수 사용하기
#include <iostream>
using namespace std;
int max(int x, int y);
int main()
{
int num1, num2, ans;
ans = max(); // 기본 인수를 적어주었기 때문에
cout << ans; // 3이 출력됨.
return 0;
}
int max(int x=1, int y=2){
if(x > y)
return x;
else
return y;
}
함수 오버로드
#include <iostream>
using namespace std;
int max(int x, int y);
double max(double x, double y);
// 함수 이름은 똑같지만, 인수의 타입이 다름.
// 인수의 형과 개수가 다르면 같은 이름을 가진 함수를 여러개 정의할 수 있음.
int main()
{
int num1, num2, ans1;
double ans2;
ans1 = max(1,3);
ans2 = max(1.1, 5.5);
cout << ans1; // 3이 출력됨.
cout << ans2; // 5.5가 출력됨.
return 0;
}
int max(int x, int y){
if(x > y)
return x;
else
return y;
}
double max(double x, double y)
{
if(x > y)
return x;
else
return y;
}
함수 템플릿
#include <iostream>
using namespace std;
// 함수 템플릿
template <class T>
T maxt(T x, T y)
{
if(x > y)
return x;
else
return y;
}
// 다루는 형을 제외한 다른 요소가 완전히 동일한 함수를 단 한번만 정의할 수 있음.
int main()
{
int num1, num2, ans1;
double dnum1, dnum2, ans2;
ans1 = maxt(1,3);
ans2 = maxt(1.1, 5.5);
cout << ans1; // 3이 출력됨.
cout << ans2; // 5.5가 출력됨.
return 0;
}
double max(double x, double y)
{
if(x > y)
return x;
else
return y;
}
책 내용 정리
|
'Programming_Language' 카테고리의 다른 글
파이썬과 C++ 문법 차이 - 조건문, 반복문 (0) | 2020.10.27 |
---|---|
파이썬과 C++ 문법 차이 - 입출력, 증감 연산자, 제곱, 같은 형끼리 연산 (0) | 2020.10.27 |