관리 메뉴

공부 기록장 💻

[C++] 함수 중복/오버로드(function overload)와 모호성 본문

# Language & Tools/C++

[C++] 함수 중복/오버로드(function overload)와 모호성

dream_for 2021. 4. 15. 13:29


배열과 배열의 크기를 입력 받아 배열의 모든 요소의 합을 더하는 add 함수이다.

 

 

#include <iostream>
using namespace std;

int add(int arr[], int size) {
	int sum = 0;
	for (int i = 0;i < size;i++)
		sum += arr[i];
	return sum;
}

int add(int a[], int size, int b[]) {
	int sum = 0;
	for (int i = 0;i < size;i++)
		sum += a[i] + b[i];
	return sum;
}

int add(int *arr, int size, int *arr2 = NULL) {
	int sum=0;
	for (int i = 0;i < size;i++)
		sum += arr[i];
	if (arr2 == NULL)return sum;
	for (int i = 0;i < size;i++)
		sum += arr2[i];
	return sum;
}

int main() {
	int a[] = { 1,2,3,4,5 };
	int b[] = { 6,7,8,9,10 };
	int c = add(a, 5); // 배열 a의 정수를 모두 더한 값 리턴
	int d = add(a, 5, b); // 배열 a와 b의 정수를 모두 더한 값 리턴
	cout << c << endl; // 10 출력 
	cout << d << endl; // 55 출력
}

 

다음과 같은 오류가 뜬다.

 

 

728x90
반응형
Comments