std::bind함수에 대해 정리해보는 문서다.\[함수 포인터 정리글] 여기서 정리했듯이 c+11부터 x,y두개의 매개변수를 받아서 더한값을 출력하고 x+y를 리턴하는 함수가 있다고 하자.이런식으로 std::function을 통해 함수포인터를 만들어서 할당받을 수 있다
개요 멀티플레이어 게임 프로그래밍을 공부하던중 L"UDPSocket::Bind"이란 표현이 나와서 찾아봤다. LString L이 접두어로 붙은 String은 찾아보니 > A character literal that begins with the L prefix is
directx 12를 이용한 3d 게임 프로그래밍 입문 책을 공부하던 중xmvectorf32 구조체의 구조에서 union을 보고 잘 모르겠어서 정리했다.공용체는 구조체와 유사하다. 차이점은 공용체의 멤버 변수들은 같은 메모리를 공유한다.공용체는 제일 큰 멤버 변수의 사
directX 12로directx 12를 이용한 3d 게임 프로그래밍 입문 책을 공부하고 있었는 데, XMFLOAT 구조체 정의가 나와서 살펴보다가 \_in_reads란 문법이 나와서 궁금해서 검색한 내용이다.검색해보니 일종의 주석으로 \_In_reads\_(s)A p
priority_queue에서 구조체나 pair같은 다수의 값을 사용할 때 비교함수 작성하는 법이다.우선순위 큐는 기본적으로 priority_queue<자료형, 구현체 , 비교 연산자> 순으로 정의된다.자료형에는 기본자료형 int, float등등 부터 직접 구현한
얇은 복사
개요 백준 1935번 문제를 풀다가 소수점 자리 고정이 기억이 안 나서 해멨다. 이왕 검색하는 김에 cout의 함수들을 정리해본다. cout 기본적인 출력은 cout을 사용하고, 비트 이동 연산자 setw, setfill, setbase, setprecision s
큐 클래스를 구현해보던 중을 사용해 클래스를 구현했는 데, 멤버변수를 T var이라고 선언을 했다.하지만 생성자에서 초기화를 해주고 싶은데 어떻게 해야할지 몰랐다.명시적으로 기본 생성자 호출하는 방법이런식으로 T x= T();와 같은 형식으로 초기화가 가능하다.클래스
\[C++] "비정적 멤버 참조는 특정 개체에 상대적이어야 합니다" 오류 글을 작성하면서의문이 들었던 점인데, 일단 이 코드에서 잘못된부분은 멤버변수인 dir값을 디폴트매개변수로 사용하려 할 때,컴파일 시점에서는 dir값을 모르므로 오류가 뜨는 것이였다."비정적 멤버
백준 3190번 : 뱀문제를 풀기 위해 클래스 구현 중에 프로퍼티 함수를 구현해 보려고 하는 도중에 오류가 떴다.밑에 대충 구조만 적었는데 Set(), Get()을 합칠 수 없을까 하고 Dir 함수를 구현해봤다.저렇게 input매개변수의 디폴트값으로 멤버변수인 dir값
함수의 주소를 저장해 함수를 가리키는 포인터이다.예를 들어, int형 함수에 대한 함수포인터의 이름을 fP라고 하고 선언해보면이렇게 선언 할 수 있다.int ( \*fP ) 이렇게 괄호를 치는 이유는 우선순위 때문이다.만약 int \*fP로 선언해버리면 함수 포인터가
평소 포인터에 대해 헷갈리고 있었는데,이 예제를 본 후 확실히 이해할 수 있었다.student 클래스가 person클래스를 상속받는 상황이다.main함수에서 객체 포인터 ptr는 person클래스를 가리킨다.그 후 person클래스의 walk()함수를 실행시킨 후,de
map에 pair을 넣을 때 헷갈려서 공부한 내용을 정리하는 글이다.선언은 새로 생성할 땐,이런 식으로 할 수 있고iterator을 이용할 땐,키를 찾을 땐, 동일하게 find함수를 사용하여 찾는다.
c++에서 1차원 배열 동적 할당은 이런 식으로 값을 입력받아 할당할 수 있지만 2차원 배열에서 동적 할당은이런 식으로 이뤄진다.
resize(size_t n,value_type val=value_type())벡터의 size가 n보다 크면 size를 n으로 변환하고 벡터의 인덱스가 size를 넘어가는 원소들은 다 없앤다.만약 벡터의 size가 n보다 작다면 capacity를 n으로 변환 후 val
apple이란 클래스가 있을 때, apple클래스를 담는 벡터를 선언하다가,클래스의 레퍼런스를 담은 벡터도 가능한가 궁금했다.이런식으로 구현하니 오류가 떴다.이런식으로 참조에 대한 포인터를 만들 수 없다고 나온다.궁금해서 검색해봤더니 기본적으로 벡터를 선언할 때 가능한
개요 c++과 ncurses를 이용해 뱀게임을 구현하던중 충돌 처리하는 매니저가 싱글턴패턴이면 편리하게 호출할거같아서 공부했다. 여러문서를 참조했고 제일 추천하는 방식은 밑의 방식이다. 이런식으로 GetInstance()를 호출할때 static으로 선언된 싱글톤 클
algorithm 헤더의 unique함수와 erase를 쓰던 중 막혀서 정리한 글이다.두 가지로 사용이 가능하다.첫번째 erase는 해당 position의 원소를 제거한다.두번째 erase는 지울 범위를 parameter로 받는다.주의할 점은 first iterator
개요 set에 stock 구조체를 자료형으로 사용하려다가 막혀서 작성한 글이다. 접근방식 https://chanhuiseok.github.io/posts/algo-46/ 해당 구조체 내부에 연산자 s로 선언하니 오류가 났다. > 오류 C2678 이항 ' 왼쪽 피연산
\[소수 찾기 문제]를 풀던 중, c++ string의 멤버함수들을 잘 몰라서 삽질한 부분이 있어서 정리한다.기본적인 목표는 string형안에서 원하는 char원소를 제거하기.string s= "abcdef"에서 char형 원소 'd'를 지워본다고 하자. 처음 시도했던
void\* 포인터에 문득 호기심이 생겨 c언어에서 함수를 만들어 이것저것 실험해보던 중, 포인터 자체에 대해 잘 이해가 안 가는 내용이 있어서 검색해 정리한 글이다.왜 c++공부에 태그가 되어있냐면 c++과 비교하는 내용이 있어서 해줬다.이런 식으로 data배열을 동