ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • c++ 정적 배열사용 array
    Coding/Tip !! 2018. 9. 19. 14:18

    보통 우리는 배열을 사용 할 때


    1
    2
    3
    4
    5
    6
    #include <iostream>
     
    int main(){
     
    int arr[5= { 12345};
    }


    d

    처럼 선언한다.


    하지만 좀 더 쉽고 다양하게 사용할 수 있도록 선언하는 방법이 있다.

    1
    2
    3
    4
    5
    6
    7
    #include <iostream>
    #include <array>
     
    int main(){
     
    std::array<int5> hello_Arr = { 12345};
    cout << hello_Arr.size() << endl; // 배열크기 출력
    }

    c

    -> 하지만 이런식의 표현의 단점은 바로 < > 내부에 배열의 크기를 나타내는 숫자가 있어야한다는 점이다.

    -> 보통 배열은 int arr[] ={ 1,2,3,4,5 } 가 가능하지만 위의 표현은 그런것이 불가능하다는 점이다.




    이런 식으로 선언할 경우 다양한 기능을 이용할 수 있는데 대표적으로 배열에 대한 값을 sort할 수 있다.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #include <iostream>
    #include <array>
    #include <algorithm>
    int main(){
     
    std::array<int5> hello_Arr = { 1002133425};
     
    std::sort(hello_Arr.begin(), hello_Arr.end()); // 정순으로 정렬
     
    std::sort(hello_Arr.rbegin(), hello_Arr.rend()); // 역순으로 정렬 rbegin에서 r은 revers를 의미한다.
    }



    이런식으로 진행하면 배열이 정렬되어진다.


    hello_Arr.at(숫자 크기) 을 사용하게 되면 해당 숫자크기의 범위를 넘었는지 넘지 않았는지 검사를 진행하고 넘게되면 예외처리를 진행하게 된다.

    -> 속도는 보통의 hello_Arr[10] 같은 것에 비해 느리다. 

    -> hello_Arr[10]의 경우 현재 배열의 크기가 5인데 이러한 범위를 넘었는지를 검사하지 않고 무조건 접근함





    댓글 0

Designed by Tistory.