본문 바로가기

Languages/C++

(7)
별모양 찍기 : mvp 와 리팩토링 질문 ******* ***** *** * 이렇게 출력해야되는데 for 중첩문을 이용해서 어떻게 하나요.. 일단 제일 궁금한게 공백과 \n을 나타내는 방법 입니다 for 중첩문 궁금합니다 ㅎㅎ 답변 프로그래밍을 하는 방법 중 한 가지는 가장 쉬운 방법으로 일단 동작하게 하고 개선을 하는 방법이 있습니다. 전자를 최소기능제품(Minimum Viable Product, MVP)라고 이야기를 하고, 후자를 리팩토링(Refactoring)이라고 부릅니다. 언어를 처음 배웠다면 Hello World 라는 문장을 출력을 해보았을 것입니다. #include int main(int argc, const char * argv[]) { printf("Hello, World!\n"); return 0; } 위의 코드는 Hel..
소켓 프로그래밍 튜토리얼 at binarytides.com binarytides.com에 괜찮은 튜토리얼이 있어 기록용으로 링크를 저장해본다. 영문으로 되어 있지만 쉽게 읽고 따라할 수 있다.작성자는 Siver Moon이다. Winsock tutorial – Socket programming in C on windows (링크)Socket programming in C on Linux – tutorial (링크)Server and client example with C sockets on Linux (링크)Programming udp sockets in C on Linux (링크) 그외 http://www.binarytides.com/category/programming/sockets/c-sockets/
C매크로의 오동작의 예 DSL 15장에 매크로를 설명한 게 있어 나중에 예로 들 때 이용하도록 정리해 놓는다. 옳은 예)예를 들어 두 숫자의 최댓값을 구해야 하는 경우가 많다고 해보자. 그래서 a > b ? a : b와 같은 형식을 C 언어를 사용해 중복작성해야 한다고 해보자.#define max(x, y) x > y ? x : y int a=5, b=7, c=0;c = max(a,b); 나쁜 예1 - 잘못된 확장하지만 매크로를 사용하면 미묘한 문제가 수없이 생겨서 곤경에 빠지기도 한다. 매크로에 파라미터를 사용하면 특히 그렇다. 숫자를 제곱하는 매크로를 생각해보자.#define sqr(x) x * x int a=5, b=1, c=0;c = sqr(a + b); 6의 2승인 36이 나올 것이라고 기대했지만, c의 값은 11이 ..
LLVM 컴파일러? Mac OS X 라이온에서 마운틴 라이온으로 바꾸고 나서 Xcode가 5.0을 사용할 수 있게 되었다.업데이트를 미루고 있지만 LLVM이라는 생소한 단어가 보여서 찾아보게 되었다. 공식 사이트는 http://llvm.org/ 가 있었다.Low Level Virtual Machine의 약자로 애플에서도 GCC에서 LLVM으로 4.0부터 Xcode의 주요 컴파일러로 채택하였다고 한다. LLVM컴파일러란? http://jeonghodot.blogspot.kr/2013/03/llvm-3.html글을 보면 어느정도 감을 잡을 수 있을 것 같다. 또한 자바스크립트의 성능을 최대로 하는(WebGL 같은...) 곳에서는 많이 나온다.(C++ 코드를 LLVM으로 변환하고 이것을 Emscripten으로 JavaScript..
V8 학습 이전에 크롬브라우저 코드를 받아서 보다가 흐지부지 되었다.embedded용 DSL(도메인 특화 언어) 선정을 위해 LUA, Python과 함께 선택을 되면서 다시 공부하게 되었다.윈도우에서 Visual Studio 2008로 진행을 할 예정이다. 공식 사이트에서 다운로드와 빌드하는 법은 How to Download and Build V8 (https://developers.google.com/v8/build)를 참고한다. 윈도우 빌드는 https://code.google.com/p/v8/wiki/BuildingWithGYP 를 참고한다. (GYP는 mac이나 linux 같은 경우에는 make로 대체 가능하다)한국 블로그 중에 참고할 만한 사이트는 http://funnylog.kr/354 가 있다. 일부 ..
C++ web framework like spring for Java 구글=>stackoverflow: http://stackoverflow.com/questions/6172567/c-web-framework-like-spring-for-java=> Springframework Thread: a spring like architecture for c++? http://forum.springsource.org/showthread.php?45053-a-spring-like-architecture-for-c=>>pococapsule - https://code.google.com/p/pococapsule/ An IoC and DSM framework for C/C++ applications Starred by 47 users GNU Lesser GPLautumnframework ..
Xcode 4.6 - C++ 11 지원 App Store에서 업데이트가 있나 확인하던중 Xcode 4.6에 C++ 11의 '사용자 정의 리터럴'과 '제한없는 유니온'이 지원된다는 것을 봤다. MS에서는 돈주고 비싼 IDE환경을 갖추어야 하는데도 C++에 대한 새로운 스펙 지원이 빨리 되지 않는다.오히려 C#에 대해서는 업데이트가 훨씬 빠르다. Xcode는 맥 사용자라면 무료로 사용할 수 있는데에 업데이트도 수시로 되는 점이 맘에 든다.