본문 바로가기
728x90

프로그래밍4

네임 맹글링(Name Mangling)의 목적과 프로그래밍 언어별 사용 특징 네임 맹글링(Name Mangling)의 목적과 프로그래밍 언어별 사용 특징 네임 맹글링(Name Mangling)은 주로 프로그래밍 언어의 컴파일러나 인터프리터에 의해 사용되며, 프로그래밍 언어의 내부 구조와 동작 방식에 깊이 관여하는 중요한 기능으로, 특히 객체 지향 프로그래밍에서 중요한 역할을 합니다. 이러한 네임 맹글링은 다음과 같은 목적으로 주로 활용됩니다. 1. 컴파일러 내부에서의 함수 오버로딩 처리 C++와 같은 언어에서 널리 사용됩니다. 같은 이름의 함수가 여러 매개변수 타입이나 개수를 가질 때, 각각의 함수에 대해 고유한 식별자를 생성합니다. 예: int add(int, int)와 double add(double, double)는 서로 다른 내부 이름을 가집니다. 2. 클래스 멤버의 접근.. 2024. 1. 19.
트렁크(trunk)/브랜치(branch)/태그(tag) 프로젝트 흐름 트렁크(trunk)/브랜치(branch)/태그(tag) 프로젝트 흐름 트렁크(trunk), 브랜치(branch), 태그(tag)를 사용하는 프로젝트 관리 방법은 버전 관리 시스템, 특히 Git과 같은 분산 버전 관리 시스템에서 중요합니다. 이 방법론은 소프트웨어 개발 프로젝트의 구조화 및 관리를 용이하게 하며, 팀 작업의 효율성과 코드의 안정성을 높이는 데 기여합니다. 1. 트렁크(Trunk) 정의: 트렁크는 프로젝트의 주 개발 라인입니다. 이는 항상 안정적인 상태를 유지해야 하며, 프로젝트의 최신 "작업 가능" 버전을 나타냅니다. 사용 방법: 모든 주요 개발은 트렁크를 기반으로 시작됩니다. 새로운 기능이나 큰 변경이 필요한 경우, 트렁크에서 브랜치를 생성하여 작업합니다. 목적: 트렁크는 항상 릴리스 가.. 2024. 1. 10.
프로그래밍 코딩에 적합한 폰트 추천 : C++,C#,python 프로그래밍 코딩에 적합한 폰트 추천 : C++,C#,python 프로그래밍 언어에 적합한 폰트를 선택할 때 고려해야 할 요소들이 있습니다. 이러한 요소에는 가독성, 고정 너비(모노스페이스), 구별이 용이한 문자 디자인 등이 포함됩니다. 다음은 몇 가지 인기 있는 프로그래밍 언어와 그에 적합한 폰트, 그리고 이를 실제 코드에 적용한 예시입니다. 코딩 폰트에서 고려할 요소들 가독성 (Readability) 프로그래밍은 종종 긴 시간 동안 코드를 읽고 분석하는 작업을 포함합니다. 따라서 폰트는 눈의 피로를 최소화하고 오랜 시간 동안 읽기 편안해야 합니다. 예를 들어, Consolas는 명확하고 깨끗한 선으로 인해 C++ 같은 저수준 언어에서 복잡한 코드를 쉽게 구별하고 읽을 수 있게 해줍니다. 고정 너비 (F.. 2024. 1. 5.
[c,c++] #ifndef 과 #if !define()의 차이점 #ifndef 과 #if !define()의 차이점 #ifndef과 #if !defined()은 모두 전처리기 지시어로, 매크로의 정의 여부를 확인하는 데 사용됩니다. 그러나 두 지시어의 사용 방법에는 약간의 차이가 있습니다. #ifndef의 특징: 읽기 쉽고 간결: #ifndef은 "만약 정의되어 있지 않다면"이라는 의미로 자연스러운 문법을 가지고 있습니다. 코드가 더 읽기 쉽고 간결할 수 있습니다. 전통적인 사용: #ifndef은 전통적으로 많은 코드베이스에서 사용되어 왔기 때문에 익숙한 문법입니다. #ifndef 예제: #ifndef DEBUG_MODE #define DEBUG_MODE #endif #ifdef DEBUG_MODE // 디버그 모드에서 수행되는 코드 #endif #if !define.. 2024. 1. 4.
728x90