-
명품 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