본문 바로가기
728x90

Unreal/C++ 서버12

라이브러리를 링크하지 않고 헤더파일만 가지고도 빌드되는 이유 라이브러리를 링크하지 않고 헤더 파일(.h)만 #include 하여도 실행이 되는 경우는 몇 가지가 있습니다: 헤더 전용 라이브러리 (Header-Only Libraries): 일부 라이브러리는 "헤더 전용" 형태로 제공됩니다. 이러한 라이브러리는 모든 구현이 헤더 파일 내에 포함되어 있으므로 별도의 링킹이 필요하지 않습니다. 예를 들어, 많은 템플릿 기반 라이브러리들이 이 방식을 사용합니다. Inline 함수나 템플릿: 헤더 파일 내에 inline 함수나 템플릿 함수가 정의되어 있을 경우, 이들은 각 소스 파일에 직접 포함되어 컴파일됩니다. 이 경우 별도의 링킹이 필요하지 않습니다. 정적 라이브러리의 자동 링킹: 일부 정적 라이브러리는 헤더 파일 내에서 특정 지시문을 사용하여 컴파일러에게 자동으로 라이.. 2024. 4. 7.
.h 파일과 .lib 차이, .h는 있고, .cpp는 없는데 include 가능한 이유 mysql_connection.h와 같은 헤더 파일을 포함하고 사용할 때, 실제 구현이 담긴 mysql_connection.cpp 파일을 직접 다운로드하지 않았는데 볼 수 있는 이유는? 1. 미리 컴파일된 라이브러리 mysql_connection.h와 같은 라이브러리 헤더 파일을 사용할 때, 일반적으로 해당 라이브러리의 구현은 미리 컴파일되어 라이브러리 파일 형태(예: .lib, .dll, .so 등)로 제공됩니다. 이러한 라이브러리 파일은 이미 컴파일된 바이너리 코드를 포함하고 있으며, 이 파일들이 실제 함수의 구현을 담고 있습니다. 2. 링커의 역할 프로그램을 컴파일할 때, 컴파일러는 헤더 파일의 선언을 참조하여 소스 코드를 컴파일합니다. 이후 링킹 과정에서 링커는 이러한 컴파일된 코드와 미리 컴파일.. 2024. 4. 6.
CMD에서 MYSQL DB 명령어 -MySQL Shell 실행 mysqlsh -u root -h localhost -P 12333 --sql -TABLE 생성 CREATE DATABASE example_db; -데이터 베이스 사용 USE example_db; -테이블 만들기 예제 CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(50), email VARCHAR(100), created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); -2명의 사용자 추가 INSERT INTO users (username, email) VALUES ('user1', 'user1@example.com'); INSERT INTO users (userna.. 2024. 3. 31.
Debug 모드, Release 모드 특징 Debug 모드 설정 디버깅 심볼 포함: 프로그램을 쉽게 디버깅할 수 있도록 디버깅 정보를 포함시킵니다. 최적화 비활성화: 코드의 정확한 실행을 보장하고 디버거가 예상대로 작동하도록 컴파일러 최적화를 비활성화합니다. 추가적인 오류 검사: 메모리 할당, 포인터 사용 등에 대한 추가적인 검사를 활성화하여 버그를 쉽게 발견하고 수정할 수 있도록 합니다. Release 모드 설정 코드 최적화 활성화: 프로그램의 성능을 최대화하기 위해 다양한 컴파일러 최적화를 활성화합니다. 디버깅 심볼 최소화: 최종 사용자에게 배포할 때 파일 크기를 줄이기 위해 필요한 최소한의 디버깅 정보만 포함시킬 수 있습니다. 보안 기능: 릴리스 빌드에서는 추가적인 보안 기능을 활성화하여 보안 수준을 높일 수 있습니다. Visual Stud.. 2024. 3. 24.
C++를 사용하여 Database for MySQL Visual Studio에서 해당 설정을 진행해주자. mysql-connector-c++-8.2.0-winx64을 C:\Program Files\MySQL\mysql-connector-c++-8.2.0-winx64 경로에 설치했다고 가정합니다. 1. 상단에 프로젝트(Project) > 프로퍼티(Property)에 들어간다. C/C++ > General에서 Additional Include Directories에 C:\Program Files\MySQL\mysql-connector-c++-8.2.0-winx64\include\jdbc 를 입력해준다. 2. Preprocessor > Preprocessor Definitions 에 STATIC_CONCPP; 를 추가해준다. 정적으로 링킹해주는 것. 3./MD.. 2024. 3. 23.
MYSQL 설치 후 진행과정 CMD에서 아래 구문 입력 시 Connect mysqlsh -u root -h localhost -P 12333 --sql 먼저, 새로운 데이터베이스를 만듭니다: CREATE DATABASE example_db; 데이터베이스를 선택합니다: USE example_db; 새로운 테이블을 생성합니다. 예를 들어, 간단한 사용자 테이블을 만들어볼 수 있습니다: CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(50), email VARCHAR(100), created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); 이제 몇 명의 사용자를 테이블에 추가합니다: INSERT INTO users (usernam.. 2024. 3. 17.
728x90