본문 바로가기

Native

library 만들기 출처 : http://www.joinc.co.kr/modules/moniwiki/wiki.php/article_library_%B8%B8%B5%E9%B1%E2 library 의 사용 윤 상배 yundream@coconut.co.kr 차례 1절. 소개 2절. Library 이야기 2.1절. 라이브러리란 무엇인가 2.2절. 라이브러리의 종류 2.2.1절. 왜 정적라이브러리의 사용을 지양하는가 3절. 라이브러리 만들고 사용하기 3.1절. 라이브러리화 할 코드 3.2절. 정적라이브러리 제작 3.3절. 공유라이브러리 제작 / 사용 3.4절. 동적라이브러리의 사용 3.5절. 동적라이브러리를 사용하여 프로그램의 확장성과 유연성을 높이기 3.5.1절. 동적라이브러리를 이용한 예제 4절. 결론 1절. 소개 이 문서는 l.. 더보기
error msg GCC Error (Warning) Message List Copyright © 1999 Seong-Kook Cin Seong-Kook Cin Jang-Chon Dong 21-2 Sun-Chon City 540-190 South KOREA -------------------------------------------------------------------------------- Before reading this 이 문서는 GCC Version 2.7.2를 기준으로 하여 이 컴파일러가 출력하는 에러 [error]와 경고 [warning] 메시지를 한국어로 번역하고, 그 메시지를 발생할 수 있는 간단한 예제를 보이며, 간단한 해결책을 제시합니다. 이 문서는 C 배우미들이 낯선 컴파일러 메시지를 만났을 .. 더보기
mutable http://yesarang.tistory.com/344 지난 번에 이어 class Foo를 예제로 들어 얘기 보따리를 풀어 보도록 하겠습니다. 지난 글에서 class Foo 에 다음과 같이 toString()과 toString() const를 정의했었습니다. (실제 코드에서는 toString()과 같은 멤버 함수가 string&를 리턴할 리는 없을 것입니다. 그냥 예제로 든 것이니 toString()과 같은 멤버 함수를 이런식으로 구현하는 일은 피하시기 바랍니다) class Foo { public: string& toString(); string toString() const; }; 이렇게 정의해 놓고 한참을 잘 사용하고 있었는데, 갈수록 프로그램이 방대해지다 보니 어딘가 모르게 프로그램이 느려진다는 .. 더보기
ccw ccw를 묻는 것 같군요. 즉 (x1*y2 + x2*y3 + x3*y1 - y1*x2 - y2*x3 - y3*x1)이 양수이면 세점이 시계 반대방향, 음수이면 시계방향입니다. 출처 http://isair.silpir.net/entry/%EA%B8%B0%ED%95%98%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-CCW-%EC%84%B8%EC%A0%90%EC%9D%98-%EB%B0%A9%ED%96%A5%EC%84%B1-%EC%B0%BE%EA%B8%B0 .두점과 나머지 한점을 볼때 시계방향쪽인지 반시계 방향인지 알수있는 공식입니다. 위 식에서 1/2를 하면 세점을 이루는 삼각형의 넓이를 구하는 식이 되는데 (사다리꼴의 넓이 차로 생각 하시면 됩니다.) 시계방향이면 작은거에서 큰걸 빼게 되.. 더보기
expat static complie expat을 이용하고자 하려고 하는데 lib 로 쓰기 위해서 scew 와 별도로 프로젝트를 구성하였는데 아래와 같은 오류가 나오기 시작했다.. // 약간 다르다 ㅎ [code]error LNK2019: unresolved external symbol __imp_XML_ParserFree referenced in function [/code] 멍뮈.... 처음에는 그냥... scew 가 컴파일이 잘못 되었나 보다? 했지만 아무래 해도 컴파일 옵션이 특별히 다른 점이 없는 것이... 다른 문제가 있나보다 하고 한참을 헤맨 뒤 결국... expat 과 scew에 프로젝트를 합치고는 골몰히 생각중에... 구글신께 검색을 부탁하였더니만.. 다음과 같은 답글을 찾았다.. http://osdir.com/ml/text.. 더보기
singleton [code] /** * @file CDSingleton.h * @author cheol-dong choi * @version 1.0 * @date April 16, 2009 16:48:21 * @section LICENSE * * Copyright (c) 2003-2010, cheol-dong choi, (http://www.sarangnamu.net) * * Permission is hereby granted, free of charge, to any person * obtaining a copy of this software and associated documentation * files (the "Software"), to deal in the Software without * restrictio.. 더보기
extern 퍼옴]http://cafe.naver.com/devctrl/1700 C와 C++는 컴파일시 obj에 함수 이름, 변수 이름 등의 심벌을 기록하는 방식이 다르다. 그래서 C++ 컴파일러에서 C로 작성된 코드를 컴파일 하고자 할 때 사용한다. C 컴파일러는 함수 이름을 그대로 사용하는 반면 C++ 컴파일러는 그대로 사용하지 않는다. C++에서 프로그래머가 Func라는 이름으로 함수를 만들어도 이 이름과 동일한 함수를 만들 수 있다. 어떤 Func라는 함수는 정수를 인자로 받고 또 어떤 Func라는 함수는 실수를 인자로 받도록 만들 수 있다. 이렇게 이름이 동일한 여러 개의 함수가 나타날 수 있기 때문에 C++ 컴파일러는 내부적으로 Func라는 이름에다가 인자들의 타입 및 리턴 타입으로 어떤 문자들을 덧붙여서.. 더보기
STLPort compile 1. 소스를 다운로드한다. www.stlport.com 2. 압축을 원하는 위치에 푼다. 3. 압축을 푼 디렉토리에서 \STLport-5.1.0\build\lib\configure.bat 을 찾는다. 4. .net 2005 를 실행한다. 메뉴 - 도구에서 Visual Studio 2005 Command Prompt 를 클릭한다. 5. 시꺼먼 Command 창이 뜨면 3 번에서 찾은 파일의 위치로 디렉토리를 이동한다. 6. configure -c msvc8 이라고 쳐놓고 엔터키를 입력한다. 7. 위의 과정이 제대로 되었다면 화면에 머라구 입력하라구 나올것이다. 8. 이제 위의 그림에서 보여주는 대로 nmake /fmsvc.mak install 이라고 치면 vc8 이 컴파일을 수행할.. 더보기
STLport 작년 12월 6일 STLport Ver. 5.1.0 이 Release 되면서 설치방법이 조금 변경 되었다. 새로운 설치방법을 포스팅한다고 글을 적은게 1달 전이었는데 이제서야 실행하게 되었다. 설마 이 글을 기다린 사람은 없겠지만, 만약 있다면 죄송스럽게 생각하면서 글을 시작하려고 한다. 또한, 이 글을 읽는 모든 분들께 다시 한 번 당부한다. 퍼가는 것은 자유지만 출처는 분명히 해줬으면 좋겠다. 먼 옛날 STL은 한낱 문서상의 표준이었고, 내가 C++에 입문하던 때만 해도 STL은 아는 사람들 끼리의 물건이었다. 그러나 지금은 STL을 모르고 C++을 한다고 말할 수 없게 되었다. 그리고 STLport는 현존하는 STL 라이브리 중 가장 사랑받는 놈이다. 물론 VC+.. 더보기
boost install 다음 내용은 "boost 라이브러리를 Visual Studio 2008을 사용하여 컴파일 하여 설치하는 방법"에 대해서 설명하고 있습니다. 1. boost 소스파일 다운로드 http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=8041&release_id=659602 (※ 설명의 편의상 다운로드 받은 'boost_1_38_0.zip' 파일이 H: 드라이브에 압축이 풀린 상태로 가정하고 설명합니다.) 2. bjam.exe 컴파일 boost를 컴파일 하기 위해서는 bjam.exe 파일이 필요하며, 다음과 같은 절차를 통해서 bjam.exe 파일을 생성할 수 있습니다. 3. bjam.exe 복사 boost를 컴파일 하기 위해서는 bjam... 더보기