도서 : C++ 프로그래밍 입문(한티미디어)

지음 : 황준하, 김성영


  • 연습문제 2.3 - "ns.h" 파일을 만들고 MyNS라는 네임스페이스를 만들어 보라. MyNS 네임스페이스에서는 2개의 int 값 중 최대값을 반환하는 MyMax라는 함수와 최소값을 반환하는 MyMin이라는 함수를 추가하라. 단, 함수 프로토타입만 추가해야 한다. 그리고 ns.cpp 파일에는 이 두 함수의 정의 부분을 추가하도록 하라. main.cpp의 main 함수에서는 MyNS의 MyMax, MyMin 함수를 사용해 보도록 하라. 이 연습문제에서는 네임스페이스도 헤더 파일과 소스 파일로 나누어 구현될 수 있음을 보여주고 있다.

 

  • 내가 만들어본 스크립트
    • ns.h
1
2
3
4
5
6
7
8
9
10
#pragma once
 
#include <iostream>
using namespace std;
 
namespace MyNS {
    
    int MyMax(int x, int y);
    int MyMin(int x, int y);
}
cs
    • ns.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "ns.h"
#include <iostream>
 
using namespace MyNS;
 
int MyNS::MyMax(int x, int y) {
    if (x > y) {
        return x;
    }
    else {
        return y;
    }
}
 
int MyNS::MyMin(int x, int y) {
    if (x > y) {
        return y;
    }
    else {
        return x;
    }
}
cs
    • main.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include "ns.h"
#include <iostream>
 
using namespace std;
using namespace MyNS;
 
int main() {
 
    int x,y;
    
    cin >> x >> y;
    
    cout << "Max : " << MyNS::MyMax(x, y) << endl;
    cout << "Min : " << MyNS::MyMin(x, y) << endl;
    
    return 0;
}
cs
  • 결과

 

+ Recent posts