반응형

분류 전체보기 289

WebKit/Efl 빌드하기(우분투)

마지막 update : 2014-08-06 (우분투 13.10) webkit을 빌드할면 소스코드부터 받아야 합니다.소스코드를 받는 방법은 svn을 이용하거나 git을 이용하면 됩니다.(http://www.webkit.org/building/checkout.html) - svn에서 받기 : svn checkout https://svn.webkit.org/repository/webkit/trunk WebKit - git에서 받기 : git clone git://git.webkit.org/WebKit.git EFL latest 기반에서 빌드하려면 아래 "최신 EFL을 사용하여 빌드하기"를 참고하세요. * jhBuild를 사용하여 빌드하기 WebKit/EFL을 빌드하는 가장 쉬운 방법은 https://trac...

[C++11] Range based for loop

목차로 가기 - 업데이트 * 박진수님이 지적해주신 오타 수정 C++11 에는 새로운 형태의 for loop인 range based for loop를 지원합니다.이미 python같은 언어에서는 지원되던 기능이기도 합니다. python에서는 아래처럼 루프를 사용할 수 있었습니다.### pythonpeoples = ['ryuan', 'yesum', 'w.third'] for p in peoples: print 'people :', p 이것을 c++에서 구현하려면 아래와 같이 해야 할 것입니다. ### c++#include #include using namespace std; int main() { vector s; s.push_back("ryuan"); s.push_back("yesum"); s.push_ba..

[c++11] rvalue reference

목차로 가기 이미 C++ 에서는 Reference(참조자)를 지원하고 있습니다.rvalue Reference를 설명하기 전에 기존의 Reference의 예제를 잠깐 살펴보겠습니다. ### c++#include using namespace std; int main() { int zero = 0; int& a = zero; //OK int& b = 0; // Compile Error return 0; } 아시겠지만, Reference에 0을 할당하는 것은 불가능합니다.예제를 컴파일 해보면 아래와 같은 에러를 볼 수 있습니다. (gcc 기준)g++ rvalue_reference.cpp rvalue_reference.cpp: In function ‘int main()’: rvalue_reference.cpp:8..

[C++11] Variadic template

목차로 가기 먼저 짧은 영어 탓에 variadic이라는 단어부터 찾아봤습니다.하지만, variadic이란 단어는 원래 존재했던 단어는 아닌듯 합니다. (http://en.wiktionary.org/wiki/variadic)어원은 variable 과 -adic 이 결합된 단어라고 하며, `임의의 많은 변수를 취하는` 이란 뜻입니다. C언어를 접해서 쓰고 있는 사람이라면 printf를 생각하면 쉬울 듯 합니다.printf는 대표적인 variadic function입니다.### c++// printf의 선언int printf(const char *format, ...); Variadic Template을 지원한다는 것은 결국 임의의 많은 template parameter를 취하는 템플릿을 지원한다는 것을 의미..

[C++11] unique_ptr

목차로 가기 unique_ptr는 C++에서 제공하는 스마트 포인터입니다.(TODO: 스마트 포인터에 대한 설명 추가) unique_ptr를 사용하면 동적으로 힙 영역에 할당된 인스턴스에 대한 소유권을 얻고 unique_ptr 객체가 사라지면 해당 인스턴스를 해제하게 됩니다.소유권을 갖기 때문에 인스턴스를 소유하는 unique_ptr은 동시에 두개가 되어선 안됩니다.(둘이 된 경우 소멸되는 과정에서 double free 에러가 발생하게 될 것입니다.) unique_ptr를 사용하려면 헤더를 인클루드하면 됩니다. 간단한 unique_ptr의 사용 예제입니다.### c++#include #include using namespace std; void f() { unique_ptr a(new int(3)); c..

[C++11] Type Inference: auto

목차로 가기 - 업데이트 * ts님이 지적해주신 제목 오타 수정 C/C++(C++11 이전의 C++)은 어떤 변수를 사용하려면 변수의 타입을 지정하여 선언(Declaration)을 해야만 합니다. 예를 들면 아래처럼 말입니다. ### c++int a;char b; 그러나, 템플릿과 STL등을 사용하다보면 어떤 타입을 지정하여 선언한다는 것이 간단한 일이 아닙니다.예를 들어 아래처럼 복잡한 타입을 선언해야 할 수 있습니다. (내용은 타 코드에서 아무렇게나 가져왔습니다.) ### c++HashMap map = getMap(); 이를 위해 C++11에서 등장한 두가지 타입 추론(Type Inference) 방법중 하나가 바로 auto 입니다.위 문장은 간단히 아래와 같이 선언할 수 있습니다.### c++aut..

[TIZEN][EFL] 타이젠 상에서 EFL 예제 실행하기

Tizen SDK 2.2부터는 EFL 개발을 할 수 있습니다. ( Tizen 2.2 정식 SDK 배포 by SeoZ )단, Tizen을 설치하실 때 Platform Development를 선택하셔야 하고 리눅스에서만 개발이 가능합니다. 이 글은 우분투 (13.04)에서 작성하였습니다. 먼저 Tizen IDE를 실행하시고 New -> Others를 선택합니다.Tizen 폴더를 선택하여 Tizen Platform Project를 선택합니다. Template이 나오고 3가지 방법이 있습니다. 다음 릴리즈에는 Sample들도 추가되길 기대해 봅니다.EFL Application을 선택합니다. Hello EFL이라는 메뉴를 선택하고 Project name(여기서는 helloEFL)을 지정합니다.Finish를 눌러 ..

Open Source/EFL 2013.08.02
반응형