생각의 기록

꿈꾸는 개발자 하늘고래의 프로그래밍 이야기

C++ 4

jsoncpp 사용하기 #1 - jsoncpp 라이브러리 빌드 및 프로젝트 구성

개요 안녕하세요. 꿈꾸는 개발자 하늘고래입니다. C++에서 JSON을 사용하기 위해서는 직접 데이터를 파싱하거나, 별도 라이브러리를 사용해야 합니다. C++에서 사용할 수 있는 라이브러리는 많이 있지만, 이번 강의에서는 제가 주로 사용하는 jsoncpp 라이브러리를 사용하여 JSON을 파싱하도록 하겠습니다. 이번 시간에는 joncpp 라이브러리를 정적 라이브러리로 빌드하고 다른 프로젝트에서 jsoncpp 라이브러리를 링크하여 사용하는 방법에 대해서 간단하게 설명하겠습니다. 개발 및 테스트 환경 이번 강의에서는 Visual Studio C++ 환경에서 정적 라이브러리를 만들고, 만든 라이브러리를 사용하여 JSON를 파싱하도록 하겠습니다. 이번 강의의 개발 및 테스트 환경은 다음과 같습니다. Windows ..

Programming/C++ 2021.12.13

1.2 C 언어 및 C++ 소개

안녕하세요. 꿈꾸는 개발자 하늘고래입니다. 이번 강의에서는 C 언어와 C++를 간단하게 소개하려고 합니다. 우리가 앞으로 계속 같이 공부해야 할 언어이니 간단하게 알아보도록 하겠습니다. C 언어 #include int main() { printf(“Hello World!”); } C 언어는 1972년 Bell Telephone 연구소의 Dennis Ritchie가 운영체제를 만들기 위해 개발한 시스템 프로그래밍 언어입니다. Ritchie의 주요 목표는 컴파일하기 쉽고, 메모리에 효율적으로 액세스를 할 수 있고, 효율적인 코드를 생성할 수 있는 언어를 만드는 것이었으며, C 언어는 이를 기반으로 플랫폼 독립적으로 프로그래머가 많은 제어를 할 수 있도록 설계되었습니다. 1973년 Ritchie와 Ken Th..

Static Library 명명 규칙

개요 업무 특성상 다양한 환경에서 다양한 컴파일러로 개발을 하고 있습니다. 항상 최신 버전의 컴파일러를 사용하여 배포하면 큰 문제는 없을 것 같은데, 유지보수와 관련하여 구버전 컴파일러에서 개발해야 하는 경우가 종종 발생합니다. 일반적으로 솔루션 내에서 정적 라이브러리를 빌드 및 링크하여 사용하면 문제는 없으나, 솔루션 내에 포함하지 않고 만들어진 정적 라이브러리를 링크해서 사용하다보면 솔루션 개발 환경과 정적 라이브러리 개발 환경이 다른 경우 링크 오류가 발생하여 빌드가 안되는 경우가 종종 발생합니다. 이를 방지하기 위해서 정적 라이브러리 생성 시 컴파일러 버전 및 빌드 환경 등에 대한 정보를 파일 이름에 기록하여, 정적 라이브러리를 사용하는 사람이 개발 환경에 맞게 사용할 수 있도록 유도하고 있습니다..

Programming/C++ 2021.12.01

1.1 튜토리얼 소개

안녕하세요. 꿈꾸는 개발자 하늘고래입니다. C++ 튜토리얼에 방문해주신 여러분, 진심으로 환영합니다. 이번에 새롭게 시작하는 C++ 튜토리얼은 C++ 기본 개념과 C++ 프로그래밍에 필요한 전반적인 지식에 대해서 강의할 예정입니다. C 언어와 C++에 대한 기초적인 지식이 없어도 크게 적정하지 않아도 됩니다. 아주 기초적인 부분부터 다룰 예정이라 강의를 포기하지 않고 끝까지 완독한다면 분명 좋은 결과를 얻을 수 있을 것입니다. 사실 C++는 요즘에 크게 주목받는 언어는 아닙니다. 인터넷이 발달하고 모바일 플랫폼과 클라우드 서비스가 활성화되면서 많은 부분이 웹 기반으로 변경되었고, 이러한 이유로 웹, 모바일과 관련된 프로그래밍 언어가 좀 더 주목받고 있습니다. 또한 C++는 여전히 어렵다는 인식이 남아있어..