GpgStudy °Ô½ÃÆÇ À妽º GpgStudy
Game Programming Gems Åä·Ð
 
 FAQFAQ   °Ë»ö°Ë»ö   ¸â¹ö¸®½ºÆ®¸â¹ö¸®½ºÆ®   »ç¿ëÀÚ ±×·ì»ç¿ëÀÚ ±×·ì  À̹ÌÁö ÀÚ·á½ÇÀ̹ÌÁö ÀÚ·á½Ç   »ç¿ëÀÚ µî·ÏÇϱâ»ç¿ëÀÚ µî·ÏÇϱâ 
 °³ÀÎ Á¤º¸°³ÀÎ Á¤º¸   ÂÊÁö(°³ÀÎ ¸Þ½ÃÁö)¸¦ È®ÀÎÇÏ·Á¸é ·Î±×ÀÎÇϽʽÿÀÂÊÁö(°³ÀÎ ¸Þ½ÃÁö)¸¦ È®ÀÎÇÏ·Á¸é ·Î±×ÀÎÇϽʽÿÀ   ·Î±×Àηα×ÀΠ
GpgStudy ȨÀ¸·Î

Ŭ·¡½º ÇÔ¼öÆ÷ÀÎÅÍ¿¡ ´ëÇÑ Áú¹®ÀÔ´Ï´Ù.

 
Àá±è[?]    GpgStudy °Ô½ÃÆÇ À妽º -> ÇÁ·Î±×·¡¹Ö ÀϹÝ
ÀÌÀü ÁÖÁ¦ º¸±â :: ´ÙÀ½ ÁÖÁ¦ º¸±â  
±Û¾´ÀÌ ¸Þ½ÃÁö
briscape



°¡ÀÔ: 2004³â 12¿ù 23ÀÏ
¿Ã¸° ±Û: 54
¼Ò¼Ó: http://bl.na.mu

¿Ã¸®±âŬ·¡½º ÇÔ¼öÆ÷ÀÎÅÍ¿¡ ´ëÇÑ Áú¹®ÀÔ´Ï´Ù. ¿Ã·ÁÁü: 2007-06-24 00:49
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

¾È³çÇϼ¼¿ä. GUI Ŭ·¡½º¸¦ ¸¸µé°íÀִµ¥¿ä,

´ÙÀ̾ó·Î±×ÀÇ Listener ÇÔ¼öÆ÷ÀÎÅ͸¦ ¸¸µé·Á°í ÇÕ´Ï´Ù.

ListenerÀº ´ÙÀ̾ó·Î±× ¹× ÇÏÀ§ ÄÁÆ®·ÑµéÀÌ Å¬¸¯µÆÀ»¶§ ½ÇÇàÇÒ ÇÔ¼öÀÔ´Ï´Ù.

¿¹¸¦µé¾î

ÄÚµå:
class CGUIDialog
{
public:
      void (CListener::*pFunc)(int id, int msg, int param1, int param2);
};

class CMainFrame : public CListener
{
public:
      void MyListenFunc(int id, int msg, int param1, int param2);
};

À§ ó·³ µÇ¾îÀÖÀ»¶§

CGUIDialog dialog;
CMainFrame mainFrm;

dialog.pFunc = &CMainFrame::MyListenFunc;



ÀÌ·±½ÄÀ¸·Î ÇÏ·Á°í Çϴµ¥¿ä

ÇÔ¼ö¸¦ ³Ö´Â °÷¿¡¼­ ½ÅÅýº ¿¡·¯°¡ ³³´Ï´Ù.

ÀÎÅͳÝÀ» ¾Æ¹«¸® µÚÁ®µµ À§ÀÇ »ç¿ë¹ýÀº ¾È³ª¿ÍÀÖ½À´Ï´Ù. ¾î¶»°Ô ÇØ¾ß ÇÒ±î¿ä?
_________________
- To be a better man...


briscape °¡ 2007-06-24 04:28¿¡ ¼öÁ¤ÇÔ, ÃÑ 1 ¹ø ¼öÁ¤µÊ
À§·Î
»ç¿ëÀÚ Á¤º¸ º¸±â ÂÊÁö º¸³»±â À̸ÞÀÏ º¸³»±â ±Û ¿Ã¸°ÀÌÀÇ À¥»çÀÌÆ® ¹æ¹® MSN ¸Þ½ÅÀú
seaeast2



°¡ÀÔ: 2004³â 8¿ù 31ÀÏ
¿Ã¸° ±Û: 59

¿Ã¸®±â±×°Å ¾ÈµÇ´Â°É·Î ¾Ë°í Àִµ¥... ¿Ã·ÁÁü: 2007-06-24 01:41
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

±×°Å ¾µ·Á¸é staticÀ¸·Î ¸¸µé¾î¼­ ½á¾ß ÇÕ´Ï´Ù.
±×³É ³»ºÎ ¸Þ¼Òµå´Â ¾ÈµÅ¿ä.^^
_________________
ÁÁÀº »ç¶÷ÀÌ µÇÀÚ.
À§·Î
»ç¿ëÀÚ Á¤º¸ º¸±â ÂÊÁö º¸³»±â MSN ¸Þ½ÅÀú
ºñȸ¿ø
¼Õ´Ô





¿Ã¸®±â ¿Ã·ÁÁü: 2007-06-24 01:45
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

À­ ºÐ ¸»¾¸Ã³·³ Á¤Àû ÇÔ¼ö³ª functor, Äݹé Ŭ·¡½º¸¦ »ç¿ëÇϽô ¹æ¹ýÀÌ ÁÁÀ» µí ÇÕ´Ï´Ù.
À§·Î
Testors



°¡ÀÔ: 2003³â 7¿ù 26ÀÏ
¿Ã¸° ±Û: 557
¼Ò¼Ó: (ÁÖ)nFlavor


Ÿ »çÀÌÆ® ID(?):
48179650
¿Ã¸®±âRe: ±×°Å ¾ÈµÇ´Â°É·Î ¾Ë°í Àִµ¥... ¿Ã·ÁÁü: 2007-06-24 03:02
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

seaeast2 ¾¸:
±×°Å ¾µ·Á¸é staticÀ¸·Î ¸¸µé¾î¼­ ½á¾ß ÇÕ´Ï´Ù.
±×³É ³»ºÎ ¸Þ¼Òµå´Â ¾ÈµÅ¿ä.^^


¾ÈµÇ´Â°Ç ¾Æ´Ï°í.. ¹®¹ýÀÌ ±«ÆÅÇØ¼­ ±×·¸Áö µÇ±ä µË´Ï´Ù.
´Ü, Á¤Àû ¸â¹ö ÇÔ¼ö°¡ ¾Æ´Ï´Ù º¸´Ï È£ÃâÇÒ¶§ this ¸¦ ÁöÁ¤ÇØ ÁÖ¾î¾ß °ÚÁÒ..

ÄÚµå:
#include 

struct A
{
	void func1( int n )	{ printf( "%d\n", n ); }
	void func2( int n )	{ printf( "%d\n", n*n ); }
};


int main(int argc, char* argv[])
{
	A a;

	void (A::*fp)( int );

	fp = &A::func1;
	(a.*fp)( 2 );

	fp = &A::func2;
	(&a->*fp)( 2 );  // ÀÌ·±½Äµµ °¡´ÉÇÕ´Ï´Ù..

	return 0;
}


ÄÚµå:
2
4

_________________
ÇøÓ/¸ðµ¨·¯/¾Ö´Ï¸ÞÀÌÅÍ ±¸ÇØ¿° **Çö¿ª/º¸Ã濪 º´Æ¯°¡´É** / http://testors.net/
À§·Î
»ç¿ëÀÚ Á¤º¸ º¸±â ÂÊÁö º¸³»±â À̸ÞÀÏ º¸³»±â ±Û ¿Ã¸°ÀÌÀÇ À¥»çÀÌÆ® ¹æ¹® MSN ¸Þ½ÅÀú
briscape



°¡ÀÔ: 2004³â 12¿ù 23ÀÏ
¿Ã¸° ±Û: 54
¼Ò¼Ó: http://bl.na.mu

¿Ã¸®±â³× ±× ¹æ¹ýÀº ¾Ë°íÀÖ¾ú´Âµ¥¿ä. ¿Ã·ÁÁü: 2007-06-24 03:18
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

¸ÕÀú ´äº¯ °¨»çÇÕ´Ï´Ù.

±×·±µ¥ Á¦ Áú¹®¿¡¼­ º¸½Ã´Ù½ÃÇÇ Á¦°¡ ÇÏ·Á°í ÇÏ´Â °ÍÀº

ÇØ´ç Scope Ŭ·¡½ºÀÇ 'ÆÄ»ý' Ŭ·¡½ºÀÇ ¸Þ¼Òµå¸¦ È£ÃâÇÏ·Á°í ÇÕ´Ï´Ù.

±Ùµ¥ ½ÅÅýº¿¡·¯¶§¹®¿¡ ¾ÈµÇ´õ¶ó±¸¿ä..
Àοë:
error C2440: '=' : cannot convert from 'void (__thiscall CMainFrame::* )(int,int,int,int)' to 'void (__thiscall CListener::* )(int,int,int,int)'
1> Cast from base to derived requires dynamic_cast or static_cast


ÀÌ·± ¿¡·¯ÁÒ.

Á¦°¡ ÇÏ·Á´Â ¹æ¹ýÀº ¹®¹ýÀûÀ¸·Î ºÒ°¡´É ÇѰǰ¡¿ä?

Áú¹®À» Á¤¸®ÇϰڽÀ´Ï´Ù.

ÄÚµå:
void (CParent::*pFunc)(void);

À§¿Í °°Àº ÇÔ¼öÆ÷ÀÎÅͰ¡ ÀÖ½À´Ï´Ù. Ŭ·¡½º ½ºÄÚÇÁ ÇÔ¼öÆ÷ÀÎÅÍÁÒ.

±×·±µ¥ CParent¸¦ »ó¼Ó¹ÞÀº CSon À̶ó´Â Ŭ·¡½º°¡ ÀÖ´Ù¸é

CSonÀÇ ¸â¹öÇÔ¼ö¸¦ Àú ÇÔ¼öÆ÷ÀÎÅÍ¿¡ ³ÖÀ» ¼ö ÀÖ³ª¿ä?

pFunc = &CSon::MemberFunc;

ÀÌ·±½ÄÀ¸·Î¿ä..

_________________
- To be a better man...
À§·Î
»ç¿ëÀÚ Á¤º¸ º¸±â ÂÊÁö º¸³»±â À̸ÞÀÏ º¸³»±â ±Û ¿Ã¸°ÀÌÀÇ À¥»çÀÌÆ® ¹æ¹® MSN ¸Þ½ÅÀú
Testors



°¡ÀÔ: 2003³â 7¿ù 26ÀÏ
¿Ã¸° ±Û: 557
¼Ò¼Ó: (ÁÖ)nFlavor


Ÿ »çÀÌÆ® ID(?):
48179650
¿Ã¸®±âRe: ³× ±× ¹æ¹ýÀº ¾Ë°íÀÖ¾ú´Âµ¥¿ä. ¿Ã·ÁÁü: 2007-06-24 11:26
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

briscape ¾¸:
¸ÕÀú ´äº¯ °¨»çÇÕ´Ï´Ù.
±×·±µ¥ Á¦ Áú¹®¿¡¼­ º¸½Ã´Ù½ÃÇÇ Á¦°¡ ÇÏ·Á°í ÇÏ´Â °ÍÀº
ÇØ´ç Scope Ŭ·¡½ºÀÇ 'ÆÄ»ý' Ŭ·¡½ºÀÇ ¸Þ¼Òµå¸¦ È£ÃâÇÏ·Á°í ÇÕ´Ï´Ù.
±Ùµ¥ ½ÅÅýº¿¡·¯¶§¹®¿¡ ¾ÈµÇ´õ¶ó±¸¿ä..
Àοë:
error C2440: '=' : cannot convert from 'void (__thiscall CMainFrame::* )(int,int,int,int)' to 'void (__thiscall CListener::* )(int,int,int,int)'
1> Cast from base to derived requires dynamic_cast or static_cast

ÀÌ·± ¿¡·¯ÁÒ.
Á¦°¡ ÇÏ·Á´Â ¹æ¹ýÀº ¹®¹ýÀûÀ¸·Î ºÒ°¡´É ÇѰǰ¡¿ä?

Áú¹®À» Á¤¸®ÇϰڽÀ´Ï´Ù.
ÄÚµå:
void (CParent::*pFunc)(void);
À§¿Í °°Àº ÇÔ¼öÆ÷ÀÎÅͰ¡ ÀÖ½À´Ï´Ù. Ŭ·¡½º ½ºÄÚÇÁ ÇÔ¼öÆ÷ÀÎÅÍÁÒ.
±×·±µ¥ CParent¸¦ »ó¼Ó¹ÞÀº CSon À̶ó´Â Ŭ·¡½º°¡ ÀÖ´Ù¸é
CSonÀÇ ¸â¹öÇÔ¼ö¸¦ Àú ÇÔ¼öÆ÷ÀÎÅÍ¿¡ ³ÖÀ» ¼ö ÀÖ³ª¿ä?
pFunc = &CSon::MemberFunc;
ÀÌ·±½ÄÀ¸·Î¿ä..


¿¡·¯ ¸Þ¼¼Áö¿¡ ÀÌ¹Ì ÇØ´äÀÌ Á¦½Ã µÇ¾î Àֳ׿ä..
dynamic_cast ³ª static_cast ¸¦ »ç¿ëÇϼ¼¿ä.

ÄÚµå:
#include 

struct A
{
	virtual void func1( int n )	{ printf( "%d\n", n ); }
};

struct B : public A
{
	virtual void func1( int n )	{ printf( "%d\n", n*n ); }
};


int main(int argc, char* argv[])
{
	B a;

	void (A::*fp)( int );

	fp = static_cast( &B::func1 );
	(a.*fp)( 2 );

	return 0;
}

_________________
ÇøÓ/¸ðµ¨·¯/¾Ö´Ï¸ÞÀÌÅÍ ±¸ÇØ¿° **Çö¿ª/º¸Ã濪 º´Æ¯°¡´É** / http://testors.net/
À§·Î
»ç¿ëÀÚ Á¤º¸ º¸±â ÂÊÁö º¸³»±â À̸ÞÀÏ º¸³»±â ±Û ¿Ã¸°ÀÌÀÇ À¥»çÀÌÆ® ¹æ¹® MSN ¸Þ½ÅÀú
ºñȸ¿ø
¼Õ´Ô





¿Ã¸®±âÇÔ¼öÆ÷ÀÎÅ͵µ... ¿Ã·ÁÁü: 2007-06-24 13:19
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

°á±¹Àº º¯¼ö¶ø´Ï´Ù~ ¿©±â »ç¶û½º·± ¸µÅ©~

http://www.digilife.be/quickreferences/PT/The%20Function%20Pointer%20Tutorials.pdf
À§·Î
briscape



°¡ÀÔ: 2004³â 12¿ù 23ÀÏ
¿Ã¸° ±Û: 54
¼Ò¼Ó: http://bl.na.mu

¿Ã¸®±âÁ¤¸» °¨»çÇÕ´Ï´Ù.^^ ¿Ã·ÁÁü: 2007-06-24 18:09
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

¿©·¯ºÐµé Áö½ÄÀÇ ±íÀÌ¿¡ Ç×»ó ³î¶ó¿òÀ» ±ÝÄ¡ ¸øÇϳ׿ä..

Á¤¸» °¨»çµå¸³´Ï´Ù. :)
_________________
- To be a better man...
À§·Î
»ç¿ëÀÚ Á¤º¸ º¸±â ÂÊÁö º¸³»±â À̸ÞÀÏ º¸³»±â ±Û ¿Ã¸°ÀÌÀÇ À¥»çÀÌÆ® ¹æ¹® MSN ¸Þ½ÅÀú
ºñȸ¿ø
¼Õ´Ô





¿Ã¸®±â ¿Ã·ÁÁü: 2007-06-24 22:45
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

¿©´ãÀÔ´Ï´Ù¸¸ ÇÔ¼ö¸¦ Ŭ·¡½º·Î ¸¸µé¾î¼­(Funtor) ³Ñ°ÜÁÖ´Â°Ô Á»´õ C++½º·´Áö ¾ÊÀ»±î ½Í½À´Ï´Ù..
·êÀ» ¾î°Ü(?)°¡¸é¼­ ¸¸µé±âº¸´Ù´Â ÀÚ¿¬½º·¯¿î ÇüŰ¡ ´õ ÁÁÀ»°Ì´Ï´Ù..
À§·Î
ºñȸ¿ø
¼Õ´Ô





¿Ã¸®±â¸â¹ö º¯¼ö¿¡ Á¢±ÙÇÒ Çʿ䰡 ÀÖÀ»¶©.. ¿Ã·ÁÁü: 2007-06-25 02:18
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

ºñȸ¿ø ¾¸:
¿©´ãÀÔ´Ï´Ù¸¸ ÇÔ¼ö¸¦ Ŭ·¡½º·Î ¸¸µé¾î¼­(Funtor) ³Ñ°ÜÁÖ´Â°Ô Á»´õ C++½º·´Áö ¾ÊÀ»±î ½Í½À´Ï´Ù..
·êÀ» ¾î°Ü(?)°¡¸é¼­ ¸¸µé±âº¸´Ù´Â ÀÚ¿¬½º·¯¿î ÇüŰ¡ ´õ ÁÁÀ»°Ì´Ï´Ù..


¸â¹öº¯¼ö¿¡ Á¢±ÙÇÒ Çʿ䰡 ÀÖÀ» ¶© Àú ÇüŰ¡ ´õ ³´Áö ¾ÊÀ»±î¿ä.
Functor³ª static ¸Þ¼ÒµåÀÇ ºÒÆíÇÑÁ¡ÀÌ ¹Ù·Î ÀνºÅϽº¸¦ µû·Î ¹Þ¾Æ¾ßµÈ´Ù´Â Á¡ÀÌÁÒ.
À§·Î
seaeast2



°¡ÀÔ: 2004³â 8¿ù 31ÀÏ
¿Ã¸° ±Û: 59

¿Ã¸®±â¿Í¿ì!! ¿Ã·ÁÁü: 2007-06-25 02:23
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

¿ª½Ã ´ë´ÜÇϽó׿ä..
Testors ´Ô ÁøÂ¥ ¹®¹ý Âü ±«ÆÅÇÕ´Ï´Ù. ÇÏÇÏ
Àúµµ Àü¿¡ Àú°Ô ÇÊ¿äÇÑÀûÀÌ ÀÖ¾ú´Âµ¥ µµÀúÈ÷ ¹æ¹ýÀÌ »ý°¢¾È³ª¼­
staticÀ¸·Î ´ëÃæ ¾î¶»°Ô ó¸®Çß´ø ±â¾ïÀÌ Àֳ׿ä..
±×¶© ÇÔ¼öÀÚ¶ó´ø°¡ ±×·±°Å ¸ð¸£´ø »óȲÀ̾...
ÇÏ¿©°£ GPG¿¡¼­ ¸¹ÀÌ ¹è¿ó´Ï´Ù. Áú¹®ÀÚ´Â ¾Æ´ÏÁö¸¸ °¨»ç~
_________________
ÁÁÀº »ç¶÷ÀÌ µÇÀÚ.
À§·Î
»ç¿ëÀÚ Á¤º¸ º¸±â ÂÊÁö º¸³»±â MSN ¸Þ½ÅÀú
ºñȸ¿ø
¼Õ´Ô





¿Ã¸®±âRe: ³× ±× ¹æ¹ýÀº ¾Ë°íÀÖ¾ú´Âµ¥¿ä. ¿Ã·ÁÁü: 2007-06-25 10:25
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

Testors ¾¸:
¿¡·¯ ¸Þ¼¼Áö¿¡ ÀÌ¹Ì ÇØ´äÀÌ Á¦½Ã µÇ¾î Àֳ׿ä..
dynamic_cast ³ª static_cast ¸¦ »ç¿ëÇϼ¼¿ä.

ÄÚµå:
#include 

struct A
{
	virtual void func1( int n )	{ printf( "%d\n", n ); }
};

struct B : public A
{
	virtual void func1( int n )	{ printf( "%d\n", n*n ); }
};


int main(int argc, char* argv[])
{
	B a;

	void (A::*fp)( int );

	fp = static_cast( &B::func1 );
	(a.*fp)( 2 );

	return 0;
}

°¡»óÇÔ¼ö¶ó´Â Á¡À» ÀÌ¿ëÇϸé cast ¾ÈÇØµµ µË´Ï´Ù.
ÄÚµå:
fp = &A::func1;
(a.*fp)( 2 );
À§·Î
ºñȸ¿ø
¼Õ´Ô





¿Ã¸®±âRe: ÇÔ¼öÆ÷ÀÎÅ͵µ... ¿Ã·ÁÁü: 2007-06-26 15:17
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

ºñȸ¿ø ¾¸:
°á±¹Àº º¯¼ö¶ø´Ï´Ù~ ¿©±â »ç¶û½º·± ¸µÅ©~

http://www.digilife.be/quickreferences/PT/The%20Function%20Pointer%20Tutorials.pdf


Á¤¸» »ç¶û½º·± ¸µÅ©±º¿ä. (Áú¹®ÀÚ´Â ¾Æ´ÏÁö¸¸)¹®¼­ Àß ºÃ½À´Ï´Ù. ¤µ¤µ
À§·Î
ÀÌÀü ±Û Ç¥½Ã:   
Àá±è[?]    GpgStudy °Ô½ÃÆÇ À妽º -> ÇÁ·Î±×·¡¹Ö ÀÏ¹Ý ½Ã°£´ë: GMT + 9 ½Ã°£(Çѱ¹)
ÆäÀÌÁö 1 Áß 1

ÀÌ ÁÖÁ¦¿¡ ´ëÇÑ Æ®·¢¹é ÁÖ¼Ò: (Âü°í)

±Û ÀÕ±â(½ÃÇèÁß): |

 
°Ç³Ê¶Ù±â:  
»õ·Î¿î ÁÖÁ¦¸¦ ¿Ã¸± ¼ö ¾ø½À´Ï´Ù
´ä±ÛÀ» ¿Ã¸± ¼ö ¾ø½À´Ï´Ù
ÁÖÁ¦¸¦ ¼öÁ¤ÇÒ ¼ö ¾ø½À´Ï´Ù
¿Ã¸° ±ÛÀ» »èÁ¦ÇÒ ¼ö ¾ø½À´Ï´Ù
ÅõÇ¥¸¦ ÇÒ ¼ö ¾ø½À´Ï´Ù


Powered by phpBB © 2001, 2005 phpBB Group