개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.04.05 08:26

DsVector::insert 메서드 사용시 관련 질문

목록
  • 반응형디자인매니아 1일 전 2025.04.05 08:26
  • 4
    1
제가 DsVector::insert 메서드를 사용하여 중간 위치에 데이터를 삽입하려고 하는데, 아래와 같은 오류가 발생합니다.
cpp

DsVector vector;

vector.insert(1, 5);


위의 코드는 오류 메시지 "no matching function for 'std::vector::insert' to match the arguments"를 출력합니다.
해당 오류를 해결할 수 있는 방법을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  1일 전



    DsVector::insert 메서드는 두 개의 인자를 받습니다. 첫 번째 인자는 삽입 위치, 두 번째 인자는 삽입할 데이터입니다. 그러나 DsVector::insert 메서드의 경우 두 번째 인자에 데이터가 아니라 데이터의 개수가 들어갑니다.

    따라서, DsVector::insert 메서드를 사용하여 중간에 데이터를 삽입하려면, 데이터의 개수를 인자로 넣어야 합니다.

    #hostingforum.kr
    cpp
    
    DsVector vector;
    
    vector.insert(1, 5); // 오류가 발생합니다.
    
    vector.insert(1, 5); // 5를 데이터의 개수로 인식하여 오류가 발생합니다.
    
    vector.insert(1, 1); // 1을 데이터로 인식하여 데이터를 1개 삽입합니다.
    
    


    만약, 데이터를 5개를 삽입하고 싶다면, 다음과 같이 코드를 작성하면 됩니다.

    #hostingforum.kr
    cpp
    
    DsVector vector;
    
    vector.insert(1, 5);
    
    


    이러한 오류를 피하기 위해서는, 데이터를 삽입하는 위치를 0부터 시작하는 인덱스로 지정하는 것이 좋습니다.

    #hostingforum.kr
    cpp
    
    DsVector vector;
    
    vector.insert(0, 1); // 데이터를 1개 삽입합니다.
    
    vector.insert(0, 1); // 데이터를 1개 삽입합니다.
    
    vector.insert(0, 1); // 데이터를 1개 삽입합니다.
    
    vector.insert(0, 1); // 데이터를 1개 삽입합니다.
    
    vector.insert(0, 1); // 데이터를 1개 삽입합니다.
    
    

    2025-04-05 08:27

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 9,600건 / 19 페이지

검색

게시물 검색