C++(8)
-
[C/C++] vcpkg로 C++ 라이브러리 관리 쉽게 하기
C++ 라이브러리 관리하기 C++ 프로젝트가 커질수록 다양한 외부 라이브러리를 사용하게 된다. 맨 처음 gcc, g++, make만 가지고 프로젝트를 빌드할 때와는 차원이 다르게 복잡도가 늘어난다. 그래서 그걸 도와주기 위해 CMake를 사용하는데 이걸 사용할 때에도 무슨 기능을 어떻게 써야할지 막막할 때가 많다. 특히 외부 라이브러리를 가져오는데 있어서 너무 다양한 방법이 있는데, 그게 모두 동일하게 동작하지도 않거니와 라이브러리의 버전을 관리하는데 있어서도 굉장히 불편하다. 그런 점들을 해결해주고, 마치 javascript의 package.json 파일처럼 외부 라이브러리를 관리해주는게 있는데 그게 마이크로소프트에서 나온 vcpkg다. vcpkg란 공식 페이지의 메인화면을 캡쳐해왔다. 마이크로소프트에..
2022.12.23 -
[C++ 스터디] LeetCode 코딩 테스트 문제 풀어보기! - Roman to Integer
새로 배우는 언어에 익숙해지는 방법이 몇 가지 있는데, 첫번째는 바로 실무를 뛰면서 하드 트레이닝을 받는 것이고 두번째는 매일매일 문제를 한 개씩 풀어보는 것이다. 회사 동료분이 LeetCode가 좋다고 하셔서 예전에 파이썬으로 조금 문제를 풀어봤었는데, 이제 내 주력언어는 C++이 되어야하기 때문에 C++로 짜보기 시작했다. 로그인하고 이런저런 정보를 입력하니 몇 개의 문제를 추천해줘서 진짜 하드코딩해서 문제를 풀었다. 문제 문제는 로마식 숫자 표현을 우리가 아는 정수로 바꾸는 것이었다. https://leetcode.com/problems/roman-to-integer/ Roman to Integer - LeetCode Level up your coding skills and quickly land ..
2022.08.15 -
[C++ 스터디] 리터럴, 변수, 그리고 연산자
리터럴 코드에 표시한 숫자나 스트링 같은 값 다양한 표준 리터럴을 제공 십진수 리터럴: 123 8진수 리터럴: 0173 16진수 리터럴: 0x7B 이진수 리터럴: 0b1111011 부동소수점 값: 3.14f 배정도 부동소수점 값: 3.14 단일 문자: ‘a’ ‘0’으로 끝나는 문자 배열: “character array” 변수 선언 방식 int uninitializedIntl; -> 초기화하지 않은 변수 선언; 쓰레기값이 들어있다. int initializedInt = 7; -> 변수 초기화하면서 선언 타입 종류 (signed) int 부호가 있는 정수(양수와 음수)를 표현하며, 값의 범위는 컴파일러마다 다름 (대부분 4바이트다.) (signed) short (int) 작은 범위의 정수 (대부분 2바이트로..
2022.07.03 -
[C++ 스터디] 네임스페이스란
네임스페이스 코드에서 이름이 서로 충돌하는 문제를 해결하기 위해 나온 개념 사용하기 위해서는 namespace 블록으로 감싼다. // namespace.h namespace mycode { void foo(); } 선언 뿐 아니라 구현 부분도 묶을 수 있다. // namespace.cpp #include #include "namespaces.h" void mycode::foo() { std::cout
2022.07.01 -
[C++ 스터디] 소스 코드를 프로그램으로 만드는 과정
C++의 소스코드는 크게 두 가지의 파일 종류로 이루어진다. 파일의 종류 1. 헤더 파일 (.h 파일; 선언부) - 주로 나중에 소스 파일에서 구현할 함수를 선언하는 용도 - 함수의 호출 방식, 매개변수의 개수와 타입, 리턴 타입 등의 정보만 컴파일러에 전달 2. 소스 파일 (.cpp 파일; 구현부, 정의부) - 선언한 함수가 실제로 수행할 동작 구현 C++로 작성된 소스 코드를 프로그램으로 만드는 빌드 작업은 세 단계로 이루어져있다. 1. 전처리 (preprocess) - 전처리기(preprocessor)가 소스 코드에 담긴 메타 정보 처리 2. 컴파일 (compile) - 컴파일러(compiler)가 소스 코드를 머신이 읽을 수 있는 오브젝트 파일로 변환 3. 링크 (link) - 링커(linker)..
2022.06.30 -
[C++ 스터디] 전문가를 위한 C++ 공부 시작
이제 회사에서 C++을 사용하게 됐다. 예전에는 그냥 별이유 없이 공부를 하려고 했는데, 이제 진짜로 써야하니까 제대로 공부를 해보려고 회사 친구에게 책 추천을 받았다. 긱한 친구가 추천해준 책이 바로 이 책, '전문가를 위한 C++'이다. 사실 기초는 많이 다뤄주지 않는다고 하지만, 목차를 읽어보면 실전 프로그래밍에 맞게 다양한 주제를 다뤄준다고 되어있다. 일단 최대한 빨리 많은 양을 읽고 소화해내는게 내 목표다! 최대한 열심히 공부해보자!
2022.06.29