반응형

C++에서 중복된 정수값을 체크할 방법을 찾다가 set 컨테이너를 사용해봤습니다. 

set의 insert 함수를 사용할 경우 리턴값을 체크하여 중복 여부를 확인할 수 있네요.  

 

2021. 9. 22 - 최초작성

 

#include <iostream>
#include <set>

using namespace std;

int main()
{
    set<int> s;


    auto ret = s.insert(1);
    
    printf("s.insert(1) : ");
    if (ret.second)
        printf("삽입\n");
    else
        printf("중복\n");


    ret = s.insert(1);

    printf("s.insert(1) : ");
    if (ret.second)
        printf("삽입\n");
    else
        printf("중복\n");

    ret = s.insert(2);

    printf("s.insert(2) : ");
    if (ret.second)
        printf("삽입\n");
    else
        printf("중복\n");


    ret = s.insert(2);
    
    printf("s.insert(2) : ");
    if (ret.second)
        printf("삽입\n");
    else
        printf("중복\n");
}

 

 

실행 결과 

- 같은 값이 두번째로 삽입되는 경우 중복이라고 출력됩니다. 

s.insert(1) : 삽입
s.insert(1) : 중복
s.insert(2) : 삽입
s.insert(2) : 중복
반응형

해본 것을 문서화하여 기록합니다.
부족함이 있지만 도움이 되었으면 합니다.


포스트 작성시에는 문제 없었지만 이후 문제가 생길 수 있습니다.
질문을 남겨주면 가능한 빨리 답변드립니다.


제가 쓴 책도 한번 검토해보세요 ^^

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기

댓글을 달아 주세요

">