ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 명품 C++ 6장 5번
    C++ 2018. 11. 2. 17:17

    5. 동일한 크기로 배열을 만드는 다음 2개의 static 멤버 함수를 가진 ArrayUtility 클래스를 만들어라.


    static void intToDouble(int source[], double dest[], int size); // int[]을 double[]로 변환
    static void doubleToInt(double source[], int dest[], int size); // double[]을 int[]로 변환


    소스코드


    #include <iostream>
    using namespace std;
    class ArrayUtility {
    public:
        static void intToDouble(int source[], double dest[], int size); // int[]을 double[]로 변환
        static void doubleToInt(double source[], int dest[], int size); // double[]을 int[]로 변환
    };
    void ArrayUtility::intToDouble(int source[], double dest[], int size) {
        for (int i = 0; i < size; ++i) dest[i] = (double)source[i];
    }
    void ArrayUtility::doubleToInt(double source[], int dest[], int size) {
        for (int i = 0; i < size; ++i)dest[i] = (int)source[i];
    }
    int main(){
        int x[] = { 1,2,3,4,5 };
        double y[5];
        double z[] = { 9.9,8.8,7.7,6.6,5.6 };
        ArrayUtility::intToDouble(x, y, 5); // x[] -> y[]
        for (int i = 0; i < 5; ++i) cout << y[i] << ' ';
        cout << endl;
        ArrayUtility::doubleToInt(z, x, 5); // z[] -> x[]
        for (int i = 0; i < 5; ++i) cout << x[i] << ' ';
        cout << endl;
    }


    실행결과



    캡슐화를 위해 전역변수나 전역함수를 static 멤버로 만듭니다.

    'C++' 카테고리의 다른 글

    명품 C++ 6장 7번  (0) 2018.11.02
    명품 C++ 6장 6번  (0) 2018.11.02
    명품 C++ 6장 4번  (0) 2018.11.02
    명품 C++ 6장 3번  (0) 2018.11.02
    명품 C++ 6장 2번  (0) 2018.11.02

    댓글

© 2018 TISTORY. All rights reserved.