안녕하세요. 우당탕탕 개발일지입니다. 열혈 C++책으로 C++ 문법을 다시 정리하려고 합니다. 간단하게 내용 요약하고 문제푼 코드를 올립니다. 한번 올라가는 분량이 적습니다. 가벼운 마음으로 봐주세요. 아자아자 소프트!
♠내용요약 ♠ p23~25
1) C언어는 동일한 이름의 함수가 정의되는 것을 허용하지 않는다 (컴파일 에러가 난다.)
=> '함수 이름'만으로 함수를 찾기 때문이다.
하지만 C++은 매개변수의 선언형태가 다르면은 동일한 이름의 함수를 정의해도 된다.
=>'함수 이름'과 '매개변수의 선언' 두개로 함수를 찾는다.
매개 변수의 선언 형태가 다르다는 것은 '매개변수의 자료형 또는 개수가 다르다'는 것이다.
문제 01-2
int main(void)
{
int num1 = 20, num2 = 30;
swap(&num1, &num2);
std::cout << num1 << ' ' << num2 << std::endl;
char ch1 = 'A', ch2 = 'Z';
swap(&ch1, &ch2);
std::cout < <ch1<< ' ' << ch2 << std::endl;
double dbl1= - 1.111, dbl2= - 5.555;
swap(&dbl1, &dbl2);
std::cout << dbl1 << ' '<<dbl2<<std::endl;
return 0;
}
정답 01-2
#include<iostream>
void swap(int &num1, int & num2)
{
int temp = num1;
num1 = num2;
num2 = temp;
}
void swap(char &ch1 , char &ch2 )
{
char temp = ch1;
ch1 = ch2;
ch2=temp;
}
void swap(double &dbl1, double &dbl2)
{
double temp = dbl1;
dbl1 = dbl2;
dbl2 = temp;
}
int main(void)
{
int num1 = 20, num2= 30;
swap( num1, num2);
std::cout << num1 << ' ' << num2 << std::endl;
char ch1 = 'A', ch2 = 'Z';
swap(ch1, ch2);
std::cout << ch1 << ' ' << ch2 << std::endl;
double dbl1 = -1.111, dbl2 = -5.555;
swap(dbl1,dbl2);
std::cout << dbl1 << ' ' << dbl2 << std::endl;
}
728x90
'[프로그래밍 언어] > C,C++' 카테고리의 다른 글
[C언어] 배열(array)_ 개념 문제 (1번 ~5번) 답지 (1) | 2024.10.11 |
---|---|
[C언어] 배열(array)_ 개념 문제 (1번 ~5번) (1) | 2024.10.11 |
열혈 C++ 프로그래밍 ch 01-4 인라인 함수 (inline) (0) | 2024.07.05 |
열혈 C++ 프로그래밍 ch 01-3 매개변수의 디폴트 값 (Default Value) (0) | 2024.05.15 |
열혈 C++ 프로그래밍 ch 01-1 printf와 scanf를 대신하는 입출력 방식 (0) | 2024.03.20 |