static_cast vs c-style cast c++ 스타일 캐스팅을 써야 해

c++ 에서는 가급적 c style cast 보다 static_castdynamic_castreinterpret_cast const_cast사용하자 이중 일단 static_cast 를 써야 하는 이유를 살펴보자 위 코드는int 형 변수 하나 char 형 변수 하나를서로 반대의 pointer 로 casting 할 경우에 대해서 테스트 한다 실제로 아래 두가지 케이스의 경우 c++ style 의 static_cast 를 사용 하며 서로 casting 될수없는 혹은 캐스팅 될수 있더라도 문제될 […]

python – remove in for (iterator termination)

위와 같은 코드는 실제로 정상적인 의도대로 사용할수 없다이는 c++ 의 vector 에서의 iterator 로 for문을 loop 도는중 erase 할때와 같은 경우라고 이해할 수 있는데iterator terrmination 상태가 되어 버린다 다시 말하면 loop 를 도는 근간을 흔들어 버리는 행위를 루프를 도는중에 한다 라고 이해 하면 되지 않을까 싶다 python 의 경우 위의 코드에서 [:]를 붙여주게 되면 실제 […]

stl 컨테이너 선택 기준

vector 랜덤 access 현재 할당 사이즈를 넘을 경우 마다 복사 비용 발생 중간 element 의 삭제,추가 시 비용 발생 reserve 사용 을 고려 iterator 가 삽입,삭제 중 정상유지 될수 없어 for 문 사용시 iterator 사용때 주의 list 연결리스트 삽입 굳이 중간에 넣어야 한다면 vector 보다 낫다 조회 vector 가 낫다 iterator 컨테이너의 삽입 삭제 동작 […]

c++(and another) compiler on website

gcc 버전별 컴파일 가능한 modern c++ feature 확인하기 곧 바뀔 현실이지만 실제 현업에서 많이 장애물이기도 하면서 현재도 많이 남아 있는 centos 에 대한 이슈로 gcc 빌드가 몇몇 회사의 몇몇 솔루션의 경우 c++ 11 의 feature 조차 제대로 사용할 수 없는 (하지만 일부는 또 사용가능한) 케이스가 많다 그때 그때 확인하거나 알고 싶을 때 유용한 사이트가 있다 […]

개인적인 코드 철학

변수, 함수 명을 고민하고 누구나 이해할 수 있는 명사, 동사로 두어 의미도 유추할 수 있도록 한다 다른 사람이 읽기 쉬운 코드를 만든다 하나의 기능을 하는 하나의 기능에 확실한 단위 함수로 구현한다 기술을 써서 코드 가독성을 해치지 않는다 메타 프로그래밍 : 필요한 곳에서 최소한 – 코드를 읽기 힘들어짐 보통 컨테이너 구현에는 최적의 활용도 내 코드를 다른 […]

시놀로지 워드프레스 개인 도메인 주소로 설정

최초 웹페에지를 올려본다고 임시로 templated  을 이용해서 구성해둔 웹페이지가 있었고 해당 페이지가 시놀로지 메인 web station 의 웹서비스로 돌아가는 루트에 있었다워드프레스는 당연히 설치되면서 wordpress 폴더로 자리하게 두었고 penza1.synology.me/wordpress 주소를 배정받게 되었다 blog.cxx.kr 도메인은 연결은 되어 있으나 내부 주소는 모두 위의 시놀로지 주소를 사용하며, 설정페이지도 그렇고 심지어 글작성시에 어느 페이지를 통해 admin 페이지에 들어 왔느냐에 따라서 […]

rust 설치 와 hello, world! (windows)

rust 설치 방법중 아주 윈도우 친화적인 방법 https://www.rust-lang.org/learn/get-started내용을 보면 대충 어쩌고 저쩌고 visual studio c++ build tools 가 있어야된단다이미 현재 visual studio 2019 가 설치된 상태라 패스자세한 각 플랫폼 and 방법 별 rust 설치는 나중에 정리해두기로 한다 https://static.rust-lang.org/rustup/dist/x86_64-pc-windows-msvc/rustup-init.exe설치 파일을 받아 설치하면 이런 화면이 뜬다 1 일반 설치 진행 파일을 만든다확장자는 .rs– 로 보통 만드는데 테스트 […]