더북(TheBook)

  7. 두 배열을 하나로 합치는 연산을 수행하는 + 연산자 함수를 정의합니다. 이 함수는 friend로 선언합니다.

friend dynamic_array<T> operator+(const dynamic_array<T>& arr1, dynamic_array<T>& arr2)
{
    dynamic_array<T> result(arr1.size() + arr2.size()); 
    std::copy(arr1.begin(), arr1.end(), result.begin());
    std::copy(arr2.begin(), arr2.end(), result.begin() + arr1.size());

    return result;
}

  8. 배열에 저장된 모든 데이터를 문자열로 반환하는 to_string() 멤버 함수를 작성합니다. 이 함수는 데이터 구분을 위한 문자열 sep를 인자로 받으며, sep의 기본값은 쉼표(", ")로 지정합니다.

    std::string to_string(const std::string& sep = ", ")
    {
        if(n == 0)
            return "";

        std::ostringstream os;
        os << data[0];

        for (int i = 1; i < n; i++)
            os << sep << data[i];

        return os.str();
    }
};
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.