링크 : http://tingcobell.tistory.com/295
boost Ref.에 의하면 가변 크기의 배열은 std::vector or std::vector<> 의 동적인 배열을 사용할 수 있습니다.
하지만 일반적으로 알고 있는 가변의 크기는 오버헤드가 있기 마련이죠.
그래서 정적인 배열 고정크기를 정해 놓고 개발을 하게 됩니다.
배열이 컨테이너가 아니기에 불편함을 이루 말할 수 없습니다.
int array_test[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9};
int array_test[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9};
boost 라이브러리에서 제공하고 있는 boost::array 라이브러리를 사용하여 테스트 해보겠습니다.
아래 reference을 참조하시면서 내용을 보시면 좋습니다.
ㅇ Reference
namespace boost {
template<typename T, std::size_t N> class array;
template<typename T, std::size_t N> void swap(array<T, N>&, array<T, N>&);
template<typename T, std::size_t N>
bool operator==(const array<T, N>&, const array<T, N>&);
template<typename T, std::size_t N>
bool operator!=(const array<T, N>&, const array<T, N>&);
template<typename T, std::size_t N>
bool operator<(const array<T, N>&, const array<T, N>&);
template<typename T, std::size_t N>
bool operator>(const array<T, N>&, const array<T, N>&);
template<typename T, std::size_t N>
bool operator<=(const array<T, N>&, const array<T, N>&);
template<typename T, std::size_t N>
bool operator>=(const array<T, N>&, const array<T, N>&);
}
Reference 링크 : http://tingcobell.tistory.com/301
ㅇ Description
- array public construct/copy/destruct
template<typename U> array& operator=(const array<U, N>& other);
ii) 표준 std::copy 문법을 보고 한참을 고민했습니다.
아 std::copy는 알겠는데 어떻게 써야 되나 고민중에 이렇게 저렇게 표현을 해보는 과정에서 정말로 단순한 저를 발견했습니다. 아 ㅋㅋ 단순의 극치을 보여주는구나 해당 Reference을 왜 주고 이해를 시키려는 것일까 정말로 단순히 응 이렇게 저렇게 표현하면서 error을 발생하고 어쩌라는 거야라고 혼자 투덜투덜되는 저를 보면서 웃습니다. 문제에 대한 이해를 저는 못하고 조금더 구체적으로 보기로 했습니다. std::copy 라는 문법 자체를 말이죠. 그래서 모르시면 구글박사님께 정중하게 물어보세요 std::copy가 뭐에요라고 그럼 친절하게 웹페이지로 보여주죠!!
해당 std::copy에 대해서 검색이 끝났거나 또는 알고 있으시다면 위 문법에서 제공하고 있는 std::copy에 대한 내용을 가지고 코딩을 하게 됩니다.
#include <iostream>
#include <boost/array.hpp>
int main()
{
boost::array<int, 6> array_test = { 1, 2, 3, 4, 5, 6};
std::copy( array_test.begin(), array_test.end(), std::ostream_iterator<int>(std::cout, " "));
return 0;
}
'프로그램언어 > boost' 카테고리의 다른 글
[ Boost ] Boost.Array Description (0) | 2011.05.03 |
---|---|
[ Boost ] Ref. array.hpp (4) | 2011.05.02 |
[ Boost ] boost.foreach 간단한 예제-2 (0) | 2011.04.29 |
[ Boost ] 간단한 예제 (1) | 2011.04.29 |
[ boost ] Boost.foreach 간단한 예제 (0) | 2011.04.29 |