개발공부/C, C++(4)
-
[C++ Thread] promise , future 작업 기반 비동기 프로그래밍
promise , future 를 정리한 글 https://ansohxxn.github.io/cpp/chapter19-5/ C++ Chapter 19.5 : 작업 기반 비동기 프로그래밍 async, future, promise 인프런에 있는 홍정모 교수님의 홍정모의 따라 하며 배우는 C++ 강의를 듣고 정리한 필기입니다. 😀 🌜 [홍정모의 따라 하며 배우는 C++]강의 들으러 가기! ansohxxn.github.io https://narakit.tistory.com/140 [C++ Thread] 약속과 미래 객체, std::promise / std::future C++11에 도입된 std::promise와 std::future 객체를 알아본다. 약속 객체 (std::promise) 약속 객체는 주로 비동..
2024.02.27 -
C++ void 포인터란? (generic 포인터 , 함수형 포인터)
void pointer (generic pointer)는 모든 데이터 자료형의 주소를 저장할 수 있는 데이터 타입이다. 심지어 함수도 가리킬 수 있는 포인터이다. void* 란 주소값을 가지는 포인터 변수이지만, 아직 어떤 방식으로 역참조를 할지는 정해지지 않았다는 뜻이 된다. 참고로 const ,volatile형식의 변수는 void*로 가리킬 수 없다. void* vpointer=nullptr; int a = 0; float b = 0.5f; double c = 0.05; long long d = 50; vpointer = &a; vpointer = &b; vpointer = &c; vpointer = &d; 위코드는 잘 실행되지만 역참조시 (아래) 아래와 같이 정확한 자료형을 다시 할당해 주어야 한다..
2024.01.30 -
far ,near pointer란?
현재는 쓰지않는 포인터 , far, near 포인터는 예전 Dos 시절 사용하던 포인터 들입니다. 그당시에는 메모리를 접급하기 위해서 offset(16bit) 과 segment(16bit)라는 것을 사용했다. 예로 F000 : 0001 (세그먼트 주소 : 오프셋 주소) = F0000001 (실제 주소) 이렇게 두 값을 더해서 메모리 주소를 표현 했습니다. near 포인터는 오프셋 포인터만을 저장할 수 있어 16 bit의 크기를 가지고 있습니다. far 포인터는 세그먼트 와 오프셋을 모두 저장이 가능하고 32bit의 크기를 가지고 있습니다.
2024.01.30 -
함수의 매개변수 앞에 있는 const는 왜 사용하는가?
일반적인 const 사용 (잘 정리되어 있는 글이라 링크로 남겨두었다,) https://easycoding91.tistory.com/entry/C-%EA%B0%95%EC%A2%8C-const-%EC%9C%84%EC%B9%98%EC%9D%98-%EC%9D%98%EB%AF%B8%EC%99%80-%EC%82%AC%EC%9A%A9-%EB%B0%A9%EB%B2%95#1._const_%EB%B3%80%EC%88%98 은 이러하다 하지만 함수에 매개변수 앞에 있는 const가 궁긍하여 찾아보왔다. https://three-five.tistory.com/76 https://agh2o.tistory.com/8 찾아본 자료를 한 줄로 요약하자면 매개변수로 const를 붙임으로써 함수내에서 매개변수로 받는 파라미터를 읽기만..
2022.11.18