본문 바로가기

개발104

Modern C++ : enum vs enum class (98, 11) enum vs enum class 개요C++98의 전통적 enum과 C++11에서 도입된 enum class(Scoped enum)를 비교하여, 각 방식의 특징, 장단점 및 사용 시 유의점을 정리한다. C++ 버전별 주요 키워드 도입 시기C++98: enumC++11: enum class Name : UnderlyingType (기반 타입 지정) 내용 설명전통적 enum (C++98)암시적 정수 변환 허용 → 타입 안전성 부족열거자 이름이 전역 범위 오염 → 충돌 위험기반 타입 지정 불가 (기본 int)enum class (C++11)암시적 변환 금지 → 강한 타입 체킹열거자 Scoped → Color::RED 형태로 사용기반 타입 지정 가능 (enum class Color : uint8_t)static.. 2025. 8. 2.
Modern C++ 둘러보기 클래식 C++에 익숙해서 모던 C++ 변화 시기에 바닥에 뭍어두고 Rust 학습을 했었는데 흐릿해지니 충격도 줄어드는 것 같다.C++ 26에서 큰 변화가 있을거라는데, 메모리 안정성을 높인다니. 여전하다.그래도 20대 전후를 함께한 친구인데 언어 비교를 위해 다시 파내본다. Modern C++ Features (C++11, C++14, C++17, C++20, C++23)이 문서는 C++11부터 C++23까지 표준에 도입된 주요 언어 및 라이브러리 기능을 정리하고, 예제 코드를 통해 사용법을 설명합니다. 목차C++11auto 키워드범위 기반 for 문스마트 포인터 (std::unique_ptr, std::shared_ptr)nullptr람다 표현식이동 시맨틱 (rvalue 참조, std::move)기타:.. 2025. 8. 1.
윈도우11에서 VSCode GitBash 터미널을 zsh 프롬프트 처럼 만들기 GitBash 터미널을 제트쉘(zsh)처럼 활용하려면 몇 가지 간단한 설정이 필요합니다.먼저, 256 xterm 색상을 참고하여 터미널에서 컬러 표현 방식을 이해하는 것이 좋습니다. 이는 색상 구성과 시각적 환경을 조정하는 데 도움이 됩니다.https://github.com/gawin/bash-colors-256 git bash 터미널에서 컬러를 표시해 보려면,아래 내용을 입력해보세요.echo -e "\033[38;5;001m\033[48;5;123m This is red text on a background sky color. \033[0m" 터미널을 화려한 색으로 꾸며보고 싶지 않나요?이제 git bash 설정 파일을 열고 zsh 처럼 깔끔하게 만들어 봅시다. 먼저 자신의 유저 디렉토리로 이동합니다... 2024. 11. 27.
HTML, CSS, Javascript 바닐라 웹 페이지 이해하기 바닐라란?바닐라 웹 개발은 프레임워크나 라이브러리 없이 HTML, CSS, JavaScript만으로 웹 페이지를 구축하는 방식입니다. 이러한 방식은 브라우저에서 직접 실행 가능하며, 별도의 빌드 도구가 필요하지 않습니다. 순수한 웹 기술만을 활용해 가장 경량화된 형태의 웹 페이지를 제작할 수 있습니다. 프레임워크? - Vue, Nuxt - React, Next - Svelte, SvelteKit - Angular - Laptos 바닐라 웹 페이지 구성HTML (HyperText Markup Language) - 웹 페이지의 구조를 만듭니다. - 태그를 사용하여 텍스트, 이미지, 링크 등을 작성합니다. CSS (Cascading Style Sheets) - HTML 웹 페이지의 디자인을 담당합니다. - 색.. 2024. 11. 25.
HTML 자주 사용하는 태그 - <label> 비교적 간단한 기능의 태그입니다.label 요소는 대상 태그의 id를 for 속성으로 지정하여 사용하면, 레이블 클릭 시 해당 태그가 동작하도록 범위를 확장할 수 있습니다. 예를 들어, 체크박스의 레이블을 클릭해도 체크박스가 선택되게 할 수 있습니다. label - 인라인 요소입니다. - input 요소의 제목을 입력할 때 사용합니다.  주요 속성 - for : 대상 태그의 id를 지정하여 레이블을 클릭하면 같은 동작 영역으로 작동하게 합니다. 동의 체크 버튼을 만들 때도 사용합니다. 2024. 11. 24.
그럴리가 없는데, 아이파킹 주차비 폭탄 해체 얼마 전, 해킹 피해를 극복한 후 한숨 돌릴 틈도 없이 여러 경제적 어려움이 밀려오고 있습니다.경제 활동을 다시 시작한 초기라 어느 정도 예상은 했지만, 그 과정에서 예상치 못한 ‘폭탄’ 같은 문제들까지 마주하게 되었네요.  도대체 이게 무슨 일일까요? 11월 16일, 이마트에 들러 밥을 먹고 물을 사서 돌아왔던 기억은 분명하지만, 차를 두고 온 기억은 전혀 없습니다. 주차 할인권을 등록해 정산을 마치고 차단기가 열려야 주차장을 나갈 수 있는 시스템인데, 어떻게 이런 일이 벌어질 수 있는 걸까요? 문득, 오래전 번호판 인식 소프트웨어를 개발하던 연구실에 있던 친구가 떠올랐습니다. 당시에는 AI 기술이 지금처럼 발전하지 않았고 패턴 인식을 사용 했던 걸로 알고 있습니다. AI 역사를 보면, 그 시대는 LS.. 2024. 11. 23.
HTML 자주 사용하는 태그 - <input> input 태그는 사용자로부터 데이터를 입력받기 위해 사용하는 요소입니다. 특히 폼 요소와 함께 자주 사용하며 다양한 입력 타입을 제공합니다. 텍스트, 숫자, 이메일, 비밀번호 등.여러 속성을 제공하므로, 전체적인 흐름을 파악한 후 실제 웹 사이트 개발 과정에서 자세히 익혀가는 것이 좋습니다.input - 인라인 요소입니다. - 텍스트 입력 창으로 사용합니다. 주요 속성 - value : 입력창에 미리 값을 입력할 수 있습니다.  - placeholder : 사용자가 입력할 값의 힌트를 입력창에 연하게 표시합니다.  - disabled : 입력창 비활성화  - type : 입력 필드의 유형   > text : 일반 텍스트 입력 창   > password : 비밀번호 입력 (문자가 가려짐)   > emai.. 2024. 11. 22.
HTML 자주 사용하는 태그 - <span> span - 인라인 요소입니다. - 특정 글자만 묶어서 속성을 지정합니다. 나중에 CSS에 대하여 자세히 다루겠지만,우선 span 태그로 글자를 묶어서 속성을 지정해보자.head 태그에 span 태그용 스타일로 글자색을 입력한다. 본문 내용은 body 태그에 동요 반달을 입력하고span 태그로 그 중 일부 글자색을 변경한다. 웹 브라우저로 결과를 보면,  [참고]한자 : 등대(燈臺) : 줄바꿈 태그, 인라인 요소로 분류하지만 다른 기능이 없다. 반달에서 나온 ㅉ(쌍지읏) 부분은 원래 ㅅㅈ(시옷지읏)으로 되어 있다.조합형이 아닌 현재의 한글 유니코드로는 표현할 수 없다. 전체 HTML 코드 반달 푸른한울 은하물 하얀쪽배에 계수나무 한나무 톡긔한머리 돗대도 아.. 2024. 11. 21.
HTML 자주 사용하는 태그 - <a> 정적 문서(책) 중심의 정보 환경에서 동적인 인터넷 문서로 전환되는 데 핵심적인 역할을 한 기술은 하이퍼링크입니다. 하이퍼링크는 사용자가 특정 텍스트나 이미지를 클릭해 다른 문서로 즉시 이동할 수 있게 함으로써, 정보 간의 경계를 허물고 무한히 연결된 웹 환경을 만들어냈습니다. 이 기술 덕분에 인터넷은 단순한 정보 저장소를 넘어, 전 세계적으로 서로 연결된 거대한 지식 네트워크로 성장할 수 있었습니다. 이 하이퍼 링크 기술을 가능하게 한 기능이, 에이 태그입니다. A (Anchor) - 인라인 요소입니다. - 두 줄로 나줘 입력해도 한 줄에 띄어쓰기로 표시됩니다. 주요 속성 - href : 같은/다른 페이지로 이동하는 하이퍼링크 주소를 지정한다. - target 속성으로 _self : 현재 페이지를 새 .. 2024. 11. 20.