Tag: software

  • C++ Post increment and pre increment

    http://www.parashift.com/c++-faq-lite/operator-overloading.html#faq-13.14 C++ FAQ suggests the following for post increment. But actually is should be to prevent num++++ which semantically doesn’t make any sense. Similarily, operator+ should return const Number.

  • Google announced C++ testing framework

    http://code.google.com/p/googletest/ It’s licensed under new BSD license.

  • Integer overflow and security

    http://www.openssh.org/txt/preauth.adv See the change: diff -u -r1.18 auth2-chall.c — auth2-chall.c 19 Jun 2002 00:27:55 -0000 1.18 +++ auth2-chall.c 26 Jun 2002 09:37:03 -0000 @@ -256,6 +256,8 @@ authctxt->postponed = 0; /* reset */ nresp = packet_get_int(); + if (nresp > 100) + fatal(“input_userauth_info_response: nresp too big %u”, nresp); if (nresp > 0) { response =…

  • Google Style Guide

    http://code.google.com/p/google-styleguide/ Worth reading it throughly. Every major open-source project has its own style guide: a set of conventions (sometimes arbitrary) about how to write code for that project. It is much easier to understand a large codebase when all the code in it is in a consistent style. “Style” covers a lot of ground, from…

  • destructor 정리

    * public virtual dtor – 상속받을 수 있도록. – 어떤 클래스도 상속받지 않을 것이라는 확신이 있지 않는 한 상속 가능성을 열어 두기 위해. * protected non virtual dtor – 상속받을 수 있도록. – polymorphic destruction을 방지. * private dtor – 멤버 함수(delete this) 또는 friend인 함수에 의해서만 삭제가능하도록 통제 e.g.) scoped_ptr과 같은 경우 scoped_ptr자체를 외부에서…

  • Pure virtual function with definition?

    http://gotw.ca/gotw/031.htm pure virtual로 선언해놓고 define하는 destructor에 대한 설명입니다. class Foo { public: virtual ~Foo()=0; }; Foo::~Foo() { …. } 한마디로 말하면, abstract 클래스였으면 하는데 pure virtual method는 없을 때 씁니다. abstract였으면 한다는 건, 실제 Foo 클래스를 쓸 용도는 아니고 쓸려면 이 클래스를 상속받아서 새 클래스를 만든다음 새 클래스를 썼으면 한다는 의도를 표현하는 것입니다.

  • Template Method Pattern and Virtuality in C++, Visitor Pattern

    1. Learn how to correctly implement template method pattern in C++. http://www.gotw.ca/publications/mill18.htm 2. Then, consider alternatives like strategy, factory or callback. http://tech.puredanger.com/2007/07/03/pattern-hate-template/ 3. Great overview and alternative implementation of traditional visitor pattern. http://tech.puredanger.com/2007/07/16/visitor/

  • bash쉘에서도 vimpire가 되어보자

    쉘에서 vi처럼 명령어 에디팅하기 echo "set -o vi" >> ~/.bachrc echo "set editing-mode vi" >> ~/.inputrc

  • Hard interview questions

    http://everything2.com/title/hard%2520interview%2520questions 수년간 모은 CS 인터뷰 문제들이라고 하네요. 웹서핑에 지치면 하나씩 풀어봅시다.

  • Google Website Optimizer

    http://services.google.com/websiteoptimizer/ 이거 나온지 꽤 된 툴이라는데.. 용도는 이렇습니다. 어떤 웹 사이트 운영자가 그 웹사이트의 초기 페이지 www.foobar.com에 방문한 사용자가 www.foobar.com/buy?item=17 을 방문하기를 원한다고 하겠습니다. 이 때, 초기페이지를 A.html로 디자인하는게 좋을지 B.html로 디자인하는하는게 좋을지 궁금하다면 이 툴을 사용할 수 있습니다. 그러면 이 website optimizer는 사용자에게 두 디자인을 보여주고 그 중 어느 디자인을 본 사용자가 목표 페이지…