본문 바로가기

프로그래밍/C || CPP26

[C++11] std::set 을 알아보자. 1. std::set 이란?"std:set은 key 유형의 고유한 객체 (정렬된)집합을 포함하는 연관 컨테이너를 말한다.." 라고 보통 영어로 표현되어 있다.std::set is an associative container that contains a sorted set of unique objects of type Key.출처는 마지막에 있습니다. 위의 말이 이해가 되지 않는다면, 아래 글과 예제를 보면서 생각한다면 훨씬 이해하기 쉬우리라 믿는다. 우선, std:set을 사용하려면, 다음의 헤더가 필요하다.1#include cs 2. std:set의 장점 및 특징은?1. 중복된 요소는 허용하지 않는다. 다시 말하면, 고유한 요소만 포함할 수 있다.2. std::set은 템플릿 인자와 같은 특정한 타입의.. 2018. 4. 29.
[C++] 키워드 constexpr 알아보기 1. constexpr이란. (const와의 차이점..)먼저, 키워드 constexpr은 c++11에서 처음 도입되어, c++14에서 향상되었다. 해당 키워드는 const와 비슷하면서도 다르다고 할 수 있다.(당연히, 그러니까 const가 있어도 새롭게 나온 거겠지만..) 기존의 const는 const로 지정한 변수의 값을 수정하려고 할 때, 컴파일러 오류를 발생하도록 한다.반면에 constexpr도 지정한 변수의 값을 수정하려 할 때 오류를 발생시키지만 컴파일 타임에 오류를 발생 시킨다.즉, const는 런타임에 오류를 확인하는 것이고, constexpr은 컴파일을 할 때 오류를 확인할 수 있는 것이다. 그래서 그런지, 요즘은 constexpr을 더 이용하라고 하는 편인듯?? 물론 c++11 이후의 코.. 2018. 4. 23.
[C++] string::find / string::npos 를 이용한 단어 유무 찾기 c에서는 어떻게 단어를 찾았을까. 보통 c에서는 단어를 찾을 경우에 strcmp 함수를 이용하는 경우가 많다. 1 2 3 4 5 6 if (!strcmp(str1, str2)) { return 0; } else { return 1; } cs 이러한 경우는 char * 형을 사용하기 떄문에 c언어에서는 아주 유용하게 사용하고 있는 함수 중 하나일 것이다. 그럼 C++에서는 어떨까요. 특히, c++에서는 문자열을 char *형이 아닌 string 형을 쓰는 경우가 편하게 때문에 다른 방법이 필요할 것이다. 하지만, 오랜 역사로 인한 풍부한 라이브러리로 인해서 문자열을 찾는 방법은 당연히 존재한다. 1 2 3 4 5 string str = “hello world”; if (str.find(“world”) ==.. 2017. 12. 9.
[C & C++] if 앞 조건문이 false 경우, 뒷 조건문은 실행할까? c 나 cpp 또는 여러 가지 언어로 프로그래밍을 하면서 궁금해볼만한 것을 정리하려고 한다. 이번에 정리할 내용은 간단해서 많은 사람들이 알 수 있지만, 모르는 사람을 위해서 정리한다. 프로그래밍 언어에서 조건문은 굉장히 쉬운 문법 중 하나이다. 그 중, if 문은 입문자도 어렵게 생각하지 않을만한 문법이다. 이러한 if문은 여러 가지 조건을 조합하여 사용할 수 있다. 예를 들면 다음과 같다.1if ( 저녁 밥을 먹었다. && 손을 씻었다. || 과제를 했다.)cs && 또는 || 그 외 등등의 조합으로 하나의 if문을 완성할 수 있다. 그런데, 이러한 조건들은 무조건 모두 실행하는 것일까? 궁금하다면 다음을 보자. 간단하게 실험을 해보았다. ( 시간 측정으로 확인을 해보자.) 12345678910111.. 2017. 11. 24.