<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>www.ghoon.net</title>
		<link>http://www.ghoon.net/</link>
		<description></description>
		<language>ko</language>
		<pubDate>Mon, 22 Feb 2010 17:31:05 +0900</pubDate>
		<generator>Tistory 1.1 (http://www.tistory.com/)</generator>
		<item>
			<title>Alticast tru2way EPGs</title>
			<link>http://www.ghoon.net/21</link>
			<description>&lt;br /&gt;
&lt;object width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/zyHRQiysZkk&amp;hl=ko&amp;fs=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/zyHRQiysZkk&amp;hl=ko&amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;
</description>
			<author>강지훈</author>
			<guid>http://www.ghoon.net/21</guid>
			<comments>http://www.ghoon.net/21#entry21comment</comments>
			<pubDate>Thu, 21 May 2009 13:14:31 +0900</pubDate>
		</item>
		<item>
			<title>Ubuntu 9.04 - VBox Guest Addition 설치하기.</title>
			<link>http://www.ghoon.net/19</link>
			<description>&lt;br /&gt;
우분투 새 배포판인 9.04를 VirtualBox에 설치 한 후, GuestAddition을 설치하고 재부팅을 하면, 에러가 발생하게된다.&lt;br /&gt;
&lt;br /&gt;이 문제를 해결 하기 위해서는 다음과 같은 절차를 수행하면 해결 가능하다.&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
1. 게스트확장설치를 메뉴에서 선택한 후, 마운트가 되면 해당 디렉토리로 이동한다. (보통은 /media/cdrom)
&lt;DIV&gt;&lt;br /&gt;

&lt;DIV&gt;
&lt;DIV class=txc-textbox style=&quot;BORDER-RIGHT: rgb(236,156,44) 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: rgb(236,156,44) 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; BORDER-LEFT: rgb(236,156,44) 1px solid; PADDING-TOP: 10px; BORDER-BOTTOM: rgb(236,156,44) 1px solid; BACKGROUND-COLOR: rgb(0,0,0)&quot;&gt;&lt;SPAN class=Apple-style-span style=&quot;FONT-FAMILY: &#039;Courier New&#039;&quot;&gt;&lt;SPAN class=Apple-style-span style=&quot;COLOR: rgb(232,232,232)&quot;&gt;$ cd /media/cdrom&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;br /&gt;
&lt;/DIV&gt;&lt;br /&gt;
2. 바로 설치 하지 말고, 특정 폴더에 풀어준다.&lt;br /&gt;
&lt;br /&gt;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV class=txc-textbox style=&quot;BORDER-RIGHT: rgb(142,142,142) 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: rgb(142,142,142) 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; BORDER-LEFT: rgb(142,142,142) 1px solid; PADDING-TOP: 10px; BORDER-BOTTOM: rgb(142,142,142) 1px solid; BACKGROUND-COLOR: rgb(0,0,0)&quot;&gt;&lt;SPAN class=Apple-style-span style=&quot;FONT-FAMILY: &#039;Courier New&#039;&quot;&gt;&lt;SPAN class=Apple-style-span style=&quot;COLOR: rgb(232,232,232)&quot;&gt;/media/cdrom$&amp;nbsp; sudo ./VBoxLinuxAddition-x86.run --target ~/temp&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;br /&gt;
&lt;/DIV&gt;&lt;br /&gt;
3. 압축을 풀어놓은 디렉토리로 이동한 후, install.sh를 에디터로 연다. 415라인 정도에 있는 다음 내용을 수정한다.&lt;br /&gt;
&lt;br /&gt;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV class=txc-textbox style=&quot;BORDER-RIGHT: rgb(142,142,142) 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: rgb(142,142,142) 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; BORDER-LEFT: rgb(142,142,142) 1px solid; PADDING-TOP: 10px; BORDER-BOTTOM: rgb(142,142,142) 1px solid; BACKGROUND-COLOR: rgb(0,0,0)&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: &#039;Courier New&#039;&quot;&gt;&lt;SPAN class=Apple-style-span style=&quot;COLOR: rgb(232,232,232)&quot;&gt;/media/cdrom$ cd ~/temp&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=Apple-style-span style=&quot;COLOR: rgb(232,232,232)&quot;&gt;&lt;br /&gt;
&lt;/SPAN&gt;&lt;SPAN style=&quot;FONT-FAMILY: &#039;Courier New&#039;&quot;&gt;&lt;SPAN class=Apple-style-span style=&quot;COLOR: rgb(232,232,232)&quot;&gt;~/temp$ sudo vim ./install.sh&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=Apple-style-span style=&quot;COLOR: rgb(232,232,232)&quot;&gt;&lt;br /&gt;
&lt;br /&gt;-------&lt;br /&gt;
&lt;/SPAN&gt;&lt;STRIKE&gt;&lt;SPAN class=Apple-style-span style=&quot;COLOR: rgb(232,232,232)&quot;&gt;- 415 : 1.5.99.* | 1.6&lt;/SPAN&gt;&lt;br /&gt;
&lt;/STRIKE&gt;&lt;FONT color=#e31600&gt;+ 415 : 1.5.99.* | 1.6.0&lt;/FONT&gt;&lt;/DIV&gt;&lt;br /&gt;
&lt;/DIV&gt;
&lt;DIV&gt;&lt;br /&gt;
4. install.sh를 실행하여 설치한다.&lt;br /&gt;
&lt;br /&gt;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV class=txc-textbox style=&quot;BORDER-RIGHT: rgb(142,142,142) 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: rgb(142,142,142) 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; BORDER-LEFT: rgb(142,142,142) 1px solid; PADDING-TOP: 10px; BORDER-BOTTOM: rgb(142,142,142) 1px solid; BACKGROUND-COLOR: rgb(0,0,0)&quot;&gt;&lt;SPAN class=Apple-style-span style=&quot;FONT-FAMILY: &#039;Courier New&#039;&quot;&gt;&lt;SPAN class=Apple-style-span style=&quot;COLOR: rgb(232,232,232)&quot;&gt;~/temp$ sudo ./install.sh&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;br /&gt;
출처 : &lt;A href=&quot;http://pcandme.net/57&quot;&gt;http://pcandme.net/57&lt;/A&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
			<category>Linux</category>
			<author>강지훈</author>
			<guid>http://www.ghoon.net/19</guid>
			<comments>http://www.ghoon.net/19#entry19comment</comments>
			<pubDate>Fri, 01 May 2009 02:51:02 +0900</pubDate>
		</item>
		<item>
			<title>간단한 가변인자 샘플코드</title>
			<link>http://www.ghoon.net/17</link>
			<description>&lt;div style=&quot;border: 1px solid rgb(254, 137, 67); padding: 10px; background-color: rgb(254, 222, 199);&quot; class=&quot;txc-textbox&quot;&gt;
#include &amp;lt;stdarg.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;static inline void error_exit(const char* fmt, const char* msg, ...)&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; va_list args;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; va_start(args, msg);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; vfprintf(stderr, fmt, args);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; va_end(args);&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; exit(1);&lt;br /&gt;
}&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;</description>
			<author>강지훈</author>
			<guid>http://www.ghoon.net/17</guid>
			<comments>http://www.ghoon.net/17#entry17comment</comments>
			<pubDate>Thu, 15 Jan 2009 22:09:01 +0900</pubDate>
		</item>
		<item>
			<title>Eclipse에서 괄호 짝 찾아가기.</title>
			<link>http://www.ghoon.net/15</link>
			<description>VI에서 Ctrl+]와 같은 기능&lt;br /&gt;
&lt;br /&gt;
이클립스에선 ctrl + shift + p&lt;br /&gt;
&lt;br /&gt;
이용규님 땡큐. ㅋㅋ&lt;br /&gt;</description>
			<author>강지훈</author>
			<guid>http://www.ghoon.net/15</guid>
			<comments>http://www.ghoon.net/15#entry15comment</comments>
			<pubDate>Tue, 09 Dec 2008 14:43:49 +0900</pubDate>
		</item>
		<item>
			<title>우분투에서 숫자키 먹통!?!??</title>
			<link>http://www.ghoon.net/14</link>
			<description>&lt;br /&gt;
언젠가부터.. 회사 내 컴퓨터가 오른쪽 숫자키가 먹통이 되어있었는데.. &lt;br /&gt;
&lt;br /&gt;난 거의 한달동안을 이렇게 불편한채로 그냥 써왔다. -_-;; 좀 게으름이 쩐당.;;&lt;br /&gt;
&lt;br /&gt;한영키가 속썩여 오늘 이런저런 셋팅을 해주던 중, 알아본 결과..&lt;br /&gt;
&lt;br /&gt;&lt;span style=&quot;text-decoration: underline; font-weight: bold;&quot;&gt;ctrl + shift + numlock&lt;/span&gt; 이 켜져있었던 것이다. 덜덜;&lt;br /&gt;
&lt;br /&gt;숫자패드로 마우스커서를 움직이는 기능을 제공하는 것이었는데, &lt;br /&gt;
&lt;br /&gt;난 몰르고 있었다. -_-&lt;br /&gt;
&lt;br /&gt;</description>
			<author>강지훈</author>
			<guid>http://www.ghoon.net/14</guid>
			<comments>http://www.ghoon.net/14#entry14comment</comments>
			<pubDate>Tue, 02 Dec 2008 20:06:11 +0900</pubDate>
		</item>
		<item>
			<title>libiconv로 euc-kr문자열 UTF-8으로 변환하는 함수 구현.</title>
			<link>http://www.ghoon.net/13</link>
			<description>&lt;DIV style=&quot;BORDER-BOTTOM: rgb(193,193,193) 1px solid; BORDER-LEFT: rgb(193,193,193) 1px solid; PADDING-BOTTOM: 10px; BACKGROUND-COLOR: rgb(238,238,238); PADDING-LEFT: 10px; PADDING-RIGHT: 10px; BORDER-TOP: rgb(193,193,193) 1px solid; BORDER-RIGHT: rgb(193,193,193) 1px solid; PADDING-TOP: 10px&quot; class=txc-textbox&gt;/**&lt;br /&gt;
&amp;nbsp;* euckrToUtf8()&lt;br /&gt;
&amp;nbsp;*&lt;br /&gt;
&amp;nbsp;* @author &amp;nbsp;&amp;nbsp;&amp;nbsp; Ji-hoon Kang(luvflo@gmail.com)&lt;br /&gt;
&amp;nbsp;* @date&amp;nbsp;&amp;nbsp;&amp;nbsp; 2008-11-26&lt;br /&gt;
&amp;nbsp;*&lt;br /&gt;
&amp;nbsp;* @description&lt;br /&gt;
&amp;nbsp;* &amp;nbsp;&amp;nbsp;&amp;nbsp; iconv를 사용하여 EUC-KR 문자열을 UTF-8으로 변환합니다.&lt;br /&gt;
&amp;nbsp;*&lt;br /&gt;
&amp;nbsp;*/&lt;br /&gt;
string XpgUtil::euckrToUtf8(const char* szBuff)&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; string retv;&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; char* outbuf = NULL;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; char* out = NULL;&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; size_t ileft = strlen(szBuff);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; size_t oleft = ileft * 2; //TODO: 임시로.. 확인 후 수정요망..&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; out = outbuf = (char*)calloc(1, oleft + 1);&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; iconv_t cd = iconv_open(&quot;UTF-8&quot;, &quot;EUC-KR&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if(cd &amp;lt; 0) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; perror(&quot;:&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(out){&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; free(out);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; out=outbuf=NULL;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return retv;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int err = iconv(cd, (char**)&amp;amp;szBuff, &amp;amp;ileft, &amp;amp;outbuf, &amp;amp;oleft);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; iconv_close(cd);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; *outbuf = 0;&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(err &amp;gt;= 0) retv.assign(out);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if(out){&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; free(out);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; out=outbuf=NULL;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return retv;&lt;br /&gt;
}&lt;br /&gt;
&lt;/DIV&gt;&lt;br /&gt;</description>
			<category>Linux</category>
			<author>강지훈</author>
			<guid>http://www.ghoon.net/13</guid>
			<comments>http://www.ghoon.net/13#entry13comment</comments>
			<pubDate>Wed, 26 Nov 2008 09:38:12 +0900</pubDate>
		</item>
		<item>
			<title>curl URL redirection example</title>
			<link>http://www.ghoon.net/10</link>
			<description>&lt;div style=&quot;border: 1px solid rgb(193, 193, 193); padding: 10px; background-color: rgb(238, 238, 238);&quot; class=&quot;txc-textbox&quot;&gt;
/*&lt;br /&gt;
&amp;nbsp;* curl_redirection example&lt;br /&gt;
&amp;nbsp;*&lt;br /&gt;
&amp;nbsp;* @date&amp;nbsp;&amp;nbsp;&amp;nbsp; 2008. 11. 10&lt;br /&gt;
&amp;nbsp;* @author&amp;nbsp;&amp;nbsp;&amp;nbsp; ji-hoon Kang(luvflo@gmail.com)&lt;br /&gt;
&amp;nbsp;*/&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;memory.h&amp;gt;&lt;br /&gt;
#include &amp;lt;curl/curl.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
typedef struct _ftpFile&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; char&amp;nbsp;&amp;nbsp;&amp;nbsp; filename[FILENAME_MAX];&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; FILE* &amp;nbsp;&amp;nbsp;&amp;nbsp; stream;&lt;br /&gt;
}FtpFile;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
static size_t header_callback(void* ptr, size_t size, size_t nmemb, void* stream)&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; char* buff = (char*)ptr;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; const char* content_disposition = &quot;Content-Disposition: attachment;filename=&quot;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if(strstr(buff, content_disposition) )&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; FtpFile* pFileInfo = (FtpFile*)stream;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; memset(pFileInfo-&amp;gt;filename, 0, sizeof(pFileInfo-&amp;gt;filename));&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; memcpy(pFileInfo-&amp;gt;filename, buff+strlen(content_disposition), strlen(buff) - strlen(content_disposition) - 2);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;catched filename : %s length : %d\n&quot;, pFileInfo-&amp;gt;filename, strlen(pFileInfo-&amp;gt;filename));&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; return size * nmemb;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
static size_t write_callback(void* buffer, size_t size, size_t nmemb, void* stream)&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; FtpFile* out = (FtpFile*)stream;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if(out &amp;amp;&amp;amp; !out-&amp;gt;stream &amp;amp;&amp;amp; out-&amp;gt;filename)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; out-&amp;gt;stream = fopen(out-&amp;gt;filename, &quot;wb&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(!out-&amp;gt;stream)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return -1;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; return fwrite(buffer, size, nmemb, out-&amp;gt;stream);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
&amp;nbsp;* @param &amp;nbsp;&amp;nbsp;&amp;nbsp; hCurl - curl handle&lt;br /&gt;
&amp;nbsp;* @param&amp;nbsp;&amp;nbsp;&amp;nbsp; sURL -&lt;br /&gt;
&amp;nbsp;* @param&amp;nbsp;&amp;nbsp;&amp;nbsp; sLocalDir -&lt;br /&gt;
&amp;nbsp;* @return &amp;nbsp;&amp;nbsp;&amp;nbsp; &#039;CURLE_OK&#039; ok, otherwise failure.&lt;br /&gt;
&amp;nbsp;*/&lt;br /&gt;
static CURLcode download(CURL* hCurl, const char* sURL, const char* sLocalDir)&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; FtpFile &amp;nbsp;&amp;nbsp;&amp;nbsp; localfile;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; memset(&amp;amp;localfile, 0, sizeof(FtpFile));&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_easy_setopt(hCurl, CURLOPT_HEADERFUNCTION, header_callback);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_easy_setopt(hCurl, CURLOPT_HEADERDATA, &amp;amp;localfile);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_easy_setopt(hCurl, CURLOPT_URL, sURL);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_easy_setopt(hCurl, CURLOPT_WRITEFUNCTION, write_callback);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_easy_setopt(hCurl, CURLOPT_WRITEDATA, &amp;amp;localfile);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_easy_setopt(hCurl, CURLOPT_VERBOSE, 1);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; CURLcode res =&amp;nbsp; curl_easy_perform(hCurl);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if(localfile.stream) fclose(localfile.stream);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; return res;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int main(int argc, char** argv)&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; const char* sURL = &quot;http://fmov.pann.com/mmediaDownload.jsp?FileID=12992569&quot;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; const char* sLocalDir = &quot;/home/david/Download&quot;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; CURL* &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; hCurl = NULL;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_global_init(CURL_GLOBAL_ALL);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; hCurl = curl_easy_init();&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; download(hCurl, sURL, sLocalDir);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_easy_cleanup(hCurl);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; curl_global_cleanup();&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
curl의 get_easy_info()에서 redirect url을 얻어오는 방법이 아닌, jsp page header에서 실제 다운로드 받는 파일 이름을 가져오는 예제이다. &lt;br /&gt;
다운로드 받는 시점에, 리다이렉션되는 파일의 실제 파일이름을 얻어오고자 할때 사용했던 방법이다.&lt;br /&gt;
&lt;br /&gt;</description>
			<category>cURL</category>
			<author>강지훈</author>
			<guid>http://www.ghoon.net/10</guid>
			<comments>http://www.ghoon.net/10#entry10comment</comments>
			<pubDate>Tue, 11 Nov 2008 10:27:19 +0900</pubDate>
		</item>
		<item>
			<title>[Linux C API]mac address가져오기.</title>
			<link>http://www.ghoon.net/9</link>
			<description>&lt;div class=&quot;txc-textbox&quot; style=&quot;border: 1px solid rgb(243, 197, 52); padding: 10px; background-color: rgb(254, 254, 184);&quot;&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;sys/ioctl.h&amp;gt;&lt;br /&gt;
#include &amp;lt;unistd.h&amp;gt;&lt;br /&gt;
#include &amp;lt;memory.h&amp;gt;&lt;br /&gt;
#include &amp;lt;netinet/ether.h&amp;gt;&lt;br /&gt;
#include &amp;lt;net/if.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
&amp;nbsp;* @param&amp;nbsp;szMAC[out] - mac address value.&lt;br /&gt;
&amp;nbsp;* @param&amp;nbsp;nLen[out] - size of mac address&lt;br /&gt;
&amp;nbsp;* @return&amp;nbsp;0 ok, otherwise failure.&lt;br /&gt;
&amp;nbsp;*&lt;br /&gt;
&amp;nbsp;*&amp;nbsp;@author Ji-hoon Kang(luvflo@gmail.com)&lt;br /&gt;
&amp;nbsp;* @date&amp;nbsp;&amp;nbsp;&amp;nbsp; 2008-11-07&lt;br /&gt;
&amp;nbsp;*/&lt;br /&gt;
int GetMacAddr(char* szMac, int* nLen)&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; const char* &amp;nbsp;default_eth = &quot;eth0&quot;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; char*&amp;nbsp;&amp;nbsp;&amp;nbsp;mac_addr = NULL;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; struct ifreq &amp;nbsp;ifrq;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; int &amp;nbsp;&amp;nbsp;&amp;nbsp;fd = socket(AF_INET, SOCK_DGRAM, 0);&lt;br /&gt;

&lt;div&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; memset(&amp;amp;ifrq, 0, sizeof(ifrq));&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; strcpy(ifrq.ifr_name , default_eth);&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if(ioctl(fd, SIOCGIFHWADDR, &amp;amp;ifrq)&amp;lt;0)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; close(fd);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fprintf(stderr, &quot;%s:%d&amp;gt; ERROR getMacAddr&quot;, __FILE__, __LINE__);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 1;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; struct sockaddr *sa = &amp;amp;(ifrq.ifr_hwaddr);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; mac_addr = (char*)ether_ntoa((struct ether_addr*)sa-&amp;gt;sa_data );&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if(mac_addr == NULL) return 1;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; memset(szMac, 0, sizeof(szMac));&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; sprintf(szMac, &quot;%s&quot;, mac_addr);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; *nLen = strlen(szMac);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; close(fd);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
}&lt;br /&gt;
&lt;br /&gt;
int main(int argc, char** argv)&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; char &amp;nbsp;sMacAddr[64] = {0,};&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; int&amp;nbsp;&amp;nbsp;nLength = 0;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if( GetMacAddr(sMacAddr, &amp;amp;nLength) )&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 1;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;MacAddr : %s\nString length : %d\n&quot;, sMacAddr, nLength);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
}&lt;br /&gt;
&lt;/div&gt;
&lt;/div&gt;</description>
			<category>Linux</category>
			<author>강지훈</author>
			<guid>http://www.ghoon.net/9</guid>
			<comments>http://www.ghoon.net/9#entry9comment</comments>
			<pubDate>Mon, 10 Nov 2008 09:43:43 +0900</pubDate>
		</item>
		<item>
			<title>Ubuntu 8.04. VirtualBox USB장치 인식문제.</title>
			<link>http://www.ghoon.net/7</link>
			<description>&lt;p&gt;&lt;br /&gt;
1. /etc/init.d/mountdevsubfs.sh 수정.&lt;br /&gt;
&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border: 1px solid rgb(193, 193, 193); padding: 10px; background-color: rgb(238, 238, 238);&quot;&gt;
&lt;font color=&quot;#0686a8&quot;&gt;# Magic to make /proc/bus/usb work&lt;br /&gt;
#&lt;br /&gt;
&lt;/font&gt;&lt;font color=&quot;#c8056a&quot;&gt;#&lt;/font&gt;mkdir -p /dev/bus/usb/.usbfs&lt;br /&gt;
&lt;font color=&quot;#c8056a&quot;&gt;#&lt;/font&gt;domount usbfs &quot;&quot; /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644&lt;br /&gt;
&lt;font color=&quot;#c8056a&quot;&gt;#&lt;/font&gt;ln -s .usbfs/devices /dev/bus/usb/devices&lt;br /&gt;
&lt;font color=&quot;#c8056a&quot;&gt;#&lt;/font&gt;mount --rbind /dev/bus/usb /proc/bus/usb&lt;br /&gt;
&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;
Magic 아래쪽부터 mount 부분까지 주석 처리 되어있는 걸 없에자&lt;/p&gt;
&lt;p&gt;수정 후&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border: 1px solid rgb(193, 193, 193); padding: 10px; background-color: rgb(238, 238, 238);&quot;&gt;
&lt;font color=&quot;#0686a8&quot;&gt;# Magic to make /proc/bus/usb work&lt;br /&gt;
#&lt;br /&gt;
&lt;/font&gt;mkdir -p /dev/bus/usb/.usbfs&lt;br /&gt;
domount usbfs &quot;&quot; /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644&lt;br /&gt;
ln -s .usbfs/devices /dev/bus/usb/devices&lt;br /&gt;
mount --rbind /dev/bus/usb /proc/bus/usb&lt;br /&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;border: 0pt none ; background: transparent url(http://deco.daum-img.net/contents/horizontalrule/line06.gif?rv=1.0.1) repeat-x scroll left 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 99%; height: 15px;&quot;&gt;
&lt;hr style=&quot;border: 0pt none ; left: -999px; position: relative; top: -999px;&quot;&gt;
&lt;/div&gt;
&lt;p&gt;2. /etc/udev/rules.d/40-permissions.rules 에 유저그룹 vboxusers 를 추가 해 줘야 함&lt;br /&gt;
&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border: 1px solid rgb(193, 193, 193); padding: 10px; background-color: rgb(238, 238, 238);&quot;&gt;
&lt;font color=&quot;#0686a8&quot;&gt;# USB serial converters&lt;/font&gt;&lt;br /&gt;
SUBSYSTEM==&quot;usb_device&quot;, GOTO=&quot;usb_serial_start&quot;&lt;br /&gt;
SUBSYSTEM==&quot;usb&quot;, ENV{DEVTYPE}==&quot;usb_device&quot;, GOTO=&quot;usb_serial_start&quot;&lt;br /&gt;
GOTO=&quot;usb_serial_end&quot;&lt;br /&gt;
LABEL=&quot;usb_serial_start&quot;&lt;br /&gt;
ATTRS{idVendor}==&quot;0403&quot;, ATTRS{idProduct}==&quot;6001&quot; \&lt;br /&gt;
, MODE=&quot;0660&quot;, GROUP=&quot;dialout&quot;&lt;br /&gt;
LABEL=&quot;usb_serial_end&quot;&lt;br /&gt;
&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;
이 부분을&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border: 1px solid rgb(193, 193, 193); padding: 10px; background-color: rgb(238, 238, 238);&quot;&gt;
&lt;font color=&quot;#0686a8&quot;&gt;# USB serial converters&lt;/font&gt;&lt;br /&gt;
SUBSYSTEM==&quot;usb_device&quot;, GOTO=&quot;usb_serial_start&quot;&lt;br /&gt;
SUBSYSTEM==&quot;usb&quot;, ENV{DEVTYPE}==&quot;usb_device&quot;, GOTO=&quot;usb_serial_start&quot;&lt;br /&gt;
GOTO=&quot;usb_serial_end&quot;&lt;br /&gt;
LABEL=&quot;usb_serial_start&quot;&lt;br /&gt;
ATTRS{idVendor}==&quot;0403&quot;, ATTRS{idProduct}==&quot;6001&quot; \&lt;br /&gt;
,&lt;font color=&quot;#c8056a&quot;&gt;&lt;strong&gt;GROUP=&quot;vboxusers&quot;, &lt;/strong&gt;&lt;/font&gt;MODE=&quot;0660&quot;, GROUP=&quot;dialout&quot;&lt;br /&gt;
LABEL=&quot;usb_serial_end&quot;&lt;br /&gt;
&lt;/div&gt;
&lt;p&gt;로 그룹 부분 설정 추가&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;border: 0pt none ; background: transparent url(http://deco.daum-img.net/contents/horizontalrule/line06.gif?rv=1.0.1) repeat-x scroll left 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 99%; height: 15px;&quot;&gt;
&lt;hr style=&quot;border: 0pt none ; left: -999px; position: relative; top: -999px;&quot;&gt;
&lt;/div&gt;
&lt;p&gt;3. usbfs 설정 하나 더 추가 (&lt;span style=&quot;font-weight: bold;&quot;&gt;/etc/fstab)&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
젤 아래줄에&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border: 1px solid rgb(193, 193, 193); padding: 10px; background-color: rgb(238, 238, 238);&quot;&gt;
&lt;font color=&quot;#0686a8&quot;&gt;#usbfs&lt;br /&gt;
&lt;/font&gt;none /proc/bus/usb usbfs devgid=46,devmode=664 0 0&lt;br /&gt;
&lt;/div&gt;
&lt;br /&gt;</description>
			<category>Linux</category>
			<author>강지훈</author>
			<guid>http://www.ghoon.net/7</guid>
			<comments>http://www.ghoon.net/7#entry7comment</comments>
			<pubDate>Mon, 03 Nov 2008 13:01:38 +0900</pubDate>
		</item>
		<item>
			<title>클래스의 메소드에 대한 포인터넘기기.</title>
			<link>http://www.ghoon.net/6</link>
			<description>&lt;P&gt;poco library를 살펴보다가, 좋은 아이디어가 있어서, 남긴다.&lt;br /&gt;
&lt;br /&gt;C에서의 함수포인터 처럼, C++객체의 메소드를 포인터로 넘길 수 없을까? 라는 생각을 하고 있었는데,&lt;br /&gt;
그것에 대한 어느정도의 해답이 된 것 같다.&lt;br /&gt;
&lt;br /&gt;객체 내에 static으로 구현된 멤버 메소드는 그냥 함수포인터 처럼 넘기는 것이 가능하다.&lt;br /&gt;
그렇지 않고, static이 아닌 public으로 되어있는 멤버에 대한 포인터를 넘기는 방법을 어떻게 될까?&lt;br /&gt;
&lt;br /&gt;이거.. 나만 모르고 있었던 건가 --;;.......&lt;br /&gt;
&lt;br /&gt;편의상 인라인으로 처리한다.. &lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;FONT face=&quot;&#039;courier new&#039;,courier,monospace&quot; size=2&gt;&lt;/FONT&gt;
&lt;DIV class=txc-textbox style=&quot;BORDER-RIGHT: rgb(238,238,238) 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: rgb(238,238,238) 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; BORDER-LEFT: rgb(238,238,238) 1px solid; PADDING-TOP: 10px; BORDER-BOTTOM: rgb(238,238,238) 1px solid; BACKGROUND-COLOR: rgb(238,238,238)&quot;&gt;&lt;FONT face=&quot;&#039;courier new&#039;,courier,monospace&quot; size=2&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;#include &amp;lt;iostream&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;using namespace std;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;br /&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;class MyObject&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;public:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; MyObject(){};&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; ~MyObject(){};&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;public:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; void callback()&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; {&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; cout &amp;lt;&amp;lt; &quot;call me&quot; &amp;lt;&amp;lt; endl;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;};&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;/FONT&gt;&lt;br /&gt;
&lt;FONT face=&quot;&#039;courier new&#039;,courier,monospace&quot; size=2&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;class JHObject&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;public: &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; JHObject(){};&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; ~JHObject(){};&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;public:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; void run(MyObject* obj, void (MyObject::*pMethod)())&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; {&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; (obj-&amp;gt;*pMethod)();&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;};&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;FONT face=&quot;&#039;courier new&#039;,courier,monospace&quot; size=2&gt;&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;int main()&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; MyObject my;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; JHObject jh;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; jh.run(&amp;amp;my, &amp;amp;MyObject::callback);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;&amp;nbsp; &amp;nbsp; return 0;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 11pt&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Courier New&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Arial Black&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Book Antiqua&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Helvetica&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Times New Roman&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Trebuchet MS&quot;&gt;&lt;SPAN style=&quot;FONT-FAMILY: Verdana&quot;&gt;&lt;SPAN style=&quot;FONT-SIZE: 10pt&quot;&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;FONT face=&quot;&#039;courier new&#039;,courier,monospace&quot; size=2&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/FONT&gt;&lt;br /&gt;
간단했다.. 역시 알면 간단, 모르면 -_- 안드로메다..;;&lt;br /&gt;
객체에대한 메서드를 포인터로 넘길때에는 그 메서드를 호출할 객체에 대한 포인터도&lt;br /&gt;
함께 넘겨야 했던 것이다...&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;
&lt;P&gt;&lt;/P&gt;</description>
			<category>메소드포인터</category>
			<author>강지훈</author>
			<guid>http://www.ghoon.net/6</guid>
			<comments>http://www.ghoon.net/6#entry6comment</comments>
			<pubDate>Thu, 11 Sep 2008 20:32:12 +0900</pubDate>
		</item>
	</channel>
</rss>
