본문 바로가기
728x90

전체 글397

.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.
git에서 branch 이름 바꿨을때 로컬에서도 업데이트 하는 방법 main is now named DataWrite If you have a local clone, you can update it by running the following commands. git branch -m main DataWrite git fetch origin git branch -u DataWrite DataWrite git remote set-head origin -a 2024. 3. 30.
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.
Mongocxx Driver 설치 한글 Window에서는 유니코드 문제로 설치 불가함. (이거 떄문에 3일을 날림;;) 그냥 한글 Window에서는 해결 불가능하다고 함. 2024. 3. 16.
Python - 내가 만든 모듈, 다른 사람들이 사용하도록 패키징하기 1. setup.py 를 내 작업공간에 만든다 2. 프로젝트의 메타데이터(이름, 버전 등)을 아래와 같이 작성한다. (패키징 작업) from setuptools import find_namespace_packages, setup setup( name='test', version='3.2.1', description='Test', author='SungJun', author_email='xxxxx@naver.com', url='깃허브주소', #파일들이 존재하는 깃허브 주소 packages=find_namespace_packages(where='src', include=['SungJun*']), package_dir={'': 'src'}, install_requires=[ 'numpy', 'pandas', .. 2024. 3. 15.
Python 정적 메소드(@staticmethod) Python에서 Class에 담겨있는 함수를, 인스턴스 생성 없이 생성하는 방법이 있다. @staticmethod - 클래스의 인스턴스를 생성하지 않고 메서드에 접근 가능 - 메서드 내부에서 클래스 변수나 인스턴스 변수에 접근하지 않는다. 즉, 'self'나 'cls' 매개변수를 매서드에서 사용하지 않음 - 클래스나 인스턴스의 상태와 독립적인 기능을 수행하는 함수 내부에 정의할 때 사용 사용예제 class MathUtility: @staticmethod def add(a, b): return a + b @staticmethod def multiply(a, b): return a * b # 클래스 인스턴스를 생성하지 않고 메서드 호출 result_add = MathUtility.add(5, 3) resul.. 2024. 3. 14.
728x90