프로그래밍/공부44 [Programing] 정적 & 동적 라이브러리 동적(Dynamic) & 정적(Static) 라이브러리 이 두 가지 개념을 이해하기 전에 우선 라이브러리에 대한 개념을 확인해야 한다. 라이브러리(Library)란? 소프트웨어를 만들 때 쓰이는 클래스나 서브루틴[1] 들의 모임을 가리키는 말이다. 다른 프로그램들과 링크되기 위해 존재하는, 하나 이상의 서브루틴이나 함수(Function)들의 집합 파일이다. 또한, 링크될 수 있도록 보통 컴파일 된 형태인 목적코드(Object Code)[2] 형태로 존재한다. 미리 컴파일 되어 있어서 컴파일 시간도 단축된다. 라이브러리의 목적 라이브러리는 코드 재사용을 위해 조직화된 초창기 방법 중의 하나이며 많은 다른 프로그램들에서 사용할 수 있도록 운영체제나 소프트웨어 개발 환경제공자들에 의해 제공되는 경우가 많다. .. 2022. 12. 15. [Game] Delta Time 델타타임을 이해하기 전에 우선 FPS에 대한 개념을 이해할 필요가 있다. FPS는 무엇일까? FPS(Frame Per Second), 즉 초당 프레임을 의미한다. 1초에 몇 프레임이 재생이 되는 지를 말하는 것인데, 기존에는 컴퓨터 간의 성능 차이가 심하지 않아서 부각이 되지 않던 문제가 하드웨어의 성능이 올라가면서 문제가 대두되었다. 게임의 경우 캐릭터는 이동을 하고 프레임을 재생하고 다시 이동을 하고 프레임을 재생한다. 그리고 이 이동량은 변수든 상수든 개발자가 정해두게 된다. 프레임당 이동량이 정해져 있다면, 더 많은 FPS를 가지는 컴퓨터와 적은 FPS를 가진 컴퓨터에서 이동량은 어떻게 되는 것일까? FPS가 60인 컴퓨터와 120인 컴퓨터가 있다고 가정하자, 여기에 게임을 실행시키고 게임 캐릭터.. 2022. 12. 14. [C++] 싱글턴 패턴 엄밀히 말하면 C++ 카테고리에 분류될 것은 아니나 사실 새로 카테고리를 만들기 귀찮기 때문에 이렇게 게시한다. 싱글턴 패턴을 정의하면 다음과 같다. 애플리케이션이 시작 될 때, 어떤 클래스가 오직 한 개의 인스턴스만을 갖도록 보장하고, 이에 대한 전역적인 접근점을 제공하는 패턴 싱글턴 패턴이 사용되는 경우는 다음과 같은 상황이다. 1. 클래스의 인스턴스가 오직 하나여야 함을 보장하고, 잘 정의된 접근점으로 모든 사용자가 접근할 수 있도록 해야 할 때 2. 유일한 인스턴스가 서브클래싱으로 확장되어야 하며, 사용자는 코드의 수정 없이 확장된 서브클래스의 인스턴스를 사용할 수 있어야 할 때 이런 싱글턴 패턴이 갖는 장점은 다음과 같다. 1. 유일하게 존재하는 인스턴스로의 접근을 통제할 수 있다. --> 싱글.. 2022. 12. 13. [C++] 정적(Static) 변수 일반적으로 변수라고 하면 지역 변수와 전역 변수를 떠올린다. 그렇다면 정적 변수는 무엇일까? 정적 변수를 선언하면 특정 함수 내에서 선언을 하게 되는데, 이 경우에 변수는 전역 변수와 성격이 비슷해진다. 하지만 절대적으로 다른 것이 있다면 전역 변수는 어디서든 접근이 가능하지만 정적 변수는 지역 변수 내에서만 접근이 가능해진다. 저 글만 보면 지역 변수랑 다를 것이 없어 보인다. 하지만 코드로 직접 확인해 보면 어떤 느낌인지 알 수 있다. #include using namespace std; void Sub() { static int num1 = 0; int num2 = 0; ++num1; ++num2; cout 2022. 12. 13. 이전 1 ··· 7 8 9 10 11 다음