Programming/C++(5)
-
[C++] typedef struct, struct 차이
c++ typedef 관련 글을 보다가 struct를 선언 방법에 의문점이 생겼다. struct에 typedef를 붙여야 할까? 어떤 블로그 글에는 typedef를 선언하지 않으면 struct를 사용할 때 컴파일 오류가 생긴다고 한다기에 직접 선언해 봤다. #include struct Test1 { int n; int m; }; typedef struct Test2 { int n; int m; } T2; int main() { Test1 t1 = { 1, 2 }; Test2 t2 = { 1, 2 }; T2 t = { 1, 2 }; return 0; } 결론부터 말하면 typedef를 붙이나 안 붙이나 정상작동한다. 단지 typedef를 붙이면 다른 이름을 사용할 수 있다는 장점이 있다.
2023.08.10 -
[C++] 참조자(레퍼런스)란? 참조자는 어디에 사용할까?
요즘 회사에서 업무 때문에 다시 C++ 언어를 다시 사용해야 한다. 코드 분석을 하는 도중에 궁금한 점이 생겼다. 함수의 인자로 참조자를 받고 있었다. 왜 참조자를 함수의 인자로 받는 것인지 궁금해서 찾아봤다. 참조자(레퍼런스, reference)란? 레퍼런스란 포인터처럼 변수나 상수를 가리키는 방식으로 컨파일러에게 가리키고 있는 변수나 상수에게 또 다른 이름이 있다고 알려주는 것이다. 예시 #include int main() { int n = 1; int& reference_n = n; std::cout
2023.08.09 -
[C++] 내가 정적 라이브러리(Static Library) 추가할 줄 모른다고?③
2023.08.06 - [Programming/C++] - [C++] 내가 정적 라이브러리(Static Library) 추가할 줄 모른다고?② [C++] 내가 정적 라이브러리(Static Library) 추가할 줄 모른다고?② 2023.08.05 - [Programming/C++] - [C++] 내가 정적 라이브러리(Static Library) 추가할 줄 모른다고?① [C++] 내가 정적 라이브러리(Static Library) 추가할 줄 모른다고?① 회사에서 C++ 관련 업무를 맡았다. 팀장님이 itchbo.tistory.com 앞에서 추가한 방식도 그럭저럭 괜찮았다. 하지만 뭔가 팀장님께 제출하기엔 부족하다. 이유는 #include 경로에 "../" 이 붙었기 때문이다. "../"을 없애고 싶다. 그 ..
2023.08.07 -
[C++] 내가 정적 라이브러리(Static Library) 추가할 줄 모른다고?②
2023.08.05 - [Programming/C++] - [C++] 내가 정적 라이브러리(Static Library) 추가할 줄 모른다고?① [C++] 내가 정적 라이브러리(Static Library) 추가할 줄 모른다고?① 회사에서 C++ 관련 업무를 맡았다. 팀장님이 장비코드(MFC) 근무하는 동안 안 보게 해 주겠다고 약속하셨는데.. (팀장님 나빠요.) 나 스스로 놀란게 정적 라이브러리 추가하는 간단한 방법조차 생 itchbo.tistory.com 1편에서는 가장 간단하게 정적라이브러리를 추가하는 방법을 찾아봤다. 이렇게 추가하면 팀장님께 개발자에 대해서 다시 생각해 보라는 이야기를 들을 수도... 그렇다면 어떻게 추가하는 게 더 좋을까? 좀 더 1편에서 추가한 방법을 좀 더 개선해 보자! 목차 ..
2023.08.06 -
[C++] 내가 정적 라이브러리(Static Library) 추가할 줄 모른다고?①
회사에서 C++ 관련 업무를 맡았다. 팀장님이 장비코드(MFC) 근무하는 동안 안 보게 해 주겠다고 약속하셨는데.. (팀장님 나빠요.) 나 스스로 놀란게 정적 라이브러리 추가하는 간단한 방법조차 생각이 안 났다. (원래 알았나?) 그래서 다시 급하게 공부를 시작했다. 공부를 위해 찾아보니 최신으로 버전으로 올린 예시 실습 코드가 없어서 내가 올려 본다. 가장 간단한 방식으로 시작해 볼까 한다. 목차 실습환경 솔루션 구성 코드 추가 실행 실습환경 IDE - Visual Studio 2022 community 솔루션 구성 빈 프로젝트 선택 프로젝트 이름 "test" - 만들기 솔루션 탐색기 - 추가 - 새 프로젝트 정적 라이브러리 선택 프로젝트 이름 "StaticLib" - 만들기 코드 추가 // Stati..
2023.08.05