[C++] std::span : 연속된 메모리를 복사 없이 넘기기
안녕하세요. 이번 글에서는 C++20에서 추가된 std::span에 대해 알아보겠습니다. 배열이나 vector를 함수에 넘길 때 보통 포인터와 길이를 따로 전달하거나, vector를 const 참조로 받는 방식을 씁니다. 전자는 길이를 잘못 넘기기 쉽고, 후자는 …
안녕하세요. 이번 글에서는 C++20에서 추가된 std::span에 대해 알아보겠습니다. 배열이나 vector를 함수에 넘길 때 보통 포인터와 길이를 따로 전달하거나, vector를 const 참조로 받는 방식을 씁니다. 전자는 길이를 잘못 넘기기 쉽고, 후자는 …
안녕하세요. 이번 글에서는 make와 do의 차이에 대해 알아보겠습니다. 두 동사 모두 우리말로는 “하다, 만들다”로 옮겨져서 어느 쪽을 써야 할지 헷갈리기 쉽습니다. 큰 흐름은 make는 없던 것을 만들어 내는 것, do는 …
안녕하세요. 이번 글에서는 C#의 확장 메서드(Extension Method)에 대해 알아보겠습니다. string이나 List처럼 직접 수정할 수 없는 타입에 기능을 더하고 싶을 때, 상속을 하거나 별도의 도우미 클래스를 만들 수도 있습니다. 확장 메서드를 …
안녕하세요. 이번 글에서는 C++17에서 추가된 std::variant에 대해 알아보겠습니다. 여러 타입 중 하나의 값만 담는 상황에서는 예전에는 union을 쓰거나 부모 클래스를 두고 상속을 이용했습니다. union은 현재 어떤 타입이 들어 있는지 직접 …