y‰SŽÒнŒ}zC/C++Ž ..
32:27
07/05/09 19:33:48
cc‚ÍGCC‚Å‚·B
foo.h‚Í‚¢‚¶‚肽‚‚È‚¢‚Ì‚ÅA
extern "C" {
#include "foo.h"
}
‚Æbar.h‚Ì“ª‚É‘‚¢‚½‚ñ‚Å‚·‚ªA
‚±‚ê‚Å–â‘è‚È‚¢‚Å‚µ‚傤‚©B
ƒRƒ“ƒpƒCƒ‹‚Í’Ê‚é‚æ‚¤‚ɂȂÁ‚½‚̂ł·‚ªA
•’Ê‚Ífoo.h‚Ì’†‚Åextern‚·‚邯Žv‚¤‚Ì‚ÅA
Œã‚ɂȂɂ©•¾ŠQ‚ð‹N‚±‚·‚Æ‚©‚ ‚è‚Ü‚·‚©H
33:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/09 19:39:13
>>32
‚È‚çA
// foo.hpp
#ifndef FOO_HPP_
#define FOO_HPP_
#ifdef __cplusplus
extern "C" {
#endif
#include "foo.h"
#ifdef __cplusplus
}
#endif
#endif // #ifndef FOO_HPP_
‚Á‚Ă̂ðì‚Á‚ÄAC++ ‚©‚ç‚Í foo.hpp ‚ðƒCƒ“ƒNƒ‹[ƒh‚·‚邯‚¢‚¢‚æB
•ʂɕ¾ŠQ‚͂Ȃ¢‚©‚ÆB
34:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/09 19:53:46
URLØÝ¸(s-io.net)
35:27
07/05/09 20:03:18
>>33
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B
C‚ÆC++‚Ì•”•ª‚Í‰ðŒˆ‚µ‚½‚̂ł·‚ªA
‚»‚Ì‘¼Š‚©‚玂Á‚Ä‚«‚½foo.c/foo.h‚ª‚Å‚·‚ËA
hoge.f‚àŽg‚Á‚Ä‚é‚ñ‚Å‚·B
hoge.f‚Ì’†‚ÉSUBROUTINE hoge()‚ª‚ ‚Á‚ÄA
¡“x‚ÍƒŠƒ“ƒN‚·‚邯‚«‚Éhoge‚ªundefined‚¾‚Æ“{‚ç‚ê‚Ü‚µ‚½B
hoge.f‚Íg77‚ŃRƒ“ƒpƒCƒ‹‚µ‚Ä‚¢‚Ü‚·B
‰½‚©A.f‚à¬Ý‚³‚¹‚鎞‚Ì•û–@‚ª‚ ‚é‚ñ‚Å‚µ‚傤‚©B
ƒOƒO‚Á‚Ä‚àA1‰ñƒ‰ƒCƒuƒ‰ƒŠ‚É‚µ‚Ä‚©‚çA‚Æ‚¢‚¤‚Ì‚ªŒ©‚‚©‚ç‚È‚¢B
‰½“x‚à‚·‚݂܂¹‚ñB
36:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/09 20:23:17
F77 ‚à‚ ‚é‚Ì‚©w
‚·‚°[ƒ`ƒƒƒ“ƒ|ƒ“‚¾‚ÈB
‚»‚ê‚͂܂³‚É >>31 ‚Ì–â‘肪‚ ‚é‚Í‚¸B
nm ƒRƒ}ƒ“ƒh‚ðŽg‚¤‚ƃIƒuƒWƒFƒNƒgƒtƒ@ƒCƒ‹“à‚̃Vƒ“ƒ{ƒ‹–¼ˆê——‚ª•\ަ‚³‚ê‚邯‚ÇA
gcc ‚Ìo‚·ƒVƒ“ƒ{ƒ‹–¼‚Æ g77 ‚Ìo‚·ƒVƒ“ƒ{ƒ‹–¼‚ɈႢ‚ª‚ ‚é‚ñ‚¶‚á‚È‚¢‚©‚ÆŽv‚¤B
gcc ‚̓Vƒ“ƒ{ƒ‹–¼‚Ìæ“ª‚ɃAƒ“ƒ_[ƒXƒRƒA‚ð•t‚¯‚邯‚ÇA
g77 ‚͂܂½•ʂ̌`‚ɂȂÁ‚Ä‚é‚ñ‚¶‚á‚È‚¢‚©‚ÆB
‚»‚ꂪ—¼•û‚Å“¯‚¶‚É‚È‚é‚æ‚¤‚ɃAƒ“ƒ_[ƒXƒRƒA‚ð•t‚¯‚Ä’²®‚·‚ê‚΂¤‚Ü‚‚¢‚‚ÆŽv‚¤B
‚ ‚Æ‚ÍA‚»‚̃‰ƒCƒuƒ‰ƒŠ‚ðŽg‚¤Û‚ÉA
F77, C, C++ ‚Ì•W€ƒ‰ƒCƒuƒ‰ƒŠ‚ª‘S‚ÄƒŠƒ“ƒN‚³‚ê‚éó‘Ô‚É‚µ‚È‚¢‚Æ‚¢‚¯‚È‚¢“_‚É‚à’ˆÓB
37:27
07/05/09 21:01:49
>>36
‚È‚é‚Ù‚ÇB
Šm‚©‚Énm‚·‚邯AƒAƒ“ƒ_[ƒXƒRƒA‚ª‚‚¢‚Ă܂µ‚½B
‚»‚±‚𒼂µ‚Ä“®‚«‚Ü‚µ‚½B
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B
38:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/09 23:30:46
STL‚Ìmap‚Ìerase‚È‚ñ‚¾‚¯‚Ç
size_type erase(const key_type& x)
‚Á‚Ä‚±‚Æ‚ÍAx‚̓L[‚ðŽw’è‚·‚é‚ñ‚¾‚æ‚ËH
39:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/09 23:39:49
class Base{
virtual void Complete();
protected:
int m_nStatus;
};
class A : public Base{
void Complete(){ /* AŒÅ—L‚̈—(m_nStatus‚ðXV) */ };
};
class B : public Base{
void Complete(){ /* BŒÅ—L‚̈—(m_nStatus‚ðXV) */ };
};
ª‚±‚ñ‚ȃNƒ‰ƒX\¬‚ª‚ ‚Á‚ÄA«‚ÉŠi”[‚³‚ê‚Ä‚¢‚Ü‚·B
std::vector<Base*> BaseList;
Žd—l•ÏX‚ÅAV‹KƒNƒ‰ƒX‚ª’ljÁ‚³‚ê‚Ü‚µ‚½B
‚±‚ꂪ‹ÈŽÒ‚Å‚µ‚ÄAUpdate‚ðŒÄ‚Ño‚·‚ÆAŽ©•ªŽ©g‚ðƒxƒNƒ^‚©‚ç휂·‚邯
‚¢‚¤•ςȎd—l‚Å‚µ‚ÄcB
class C : public Base{
void Complete(){ /* CŒÅ—L‚̈—(Ž©•ª‚ðíœ) */ };
};
‚±‚ê‚ðŽÀ‘•‚·‚邯‚µ‚½‚çA‚Ç‚ñ‚È•û–@‚ª‚ ‚é‚Å‚µ‚傤‚©H
ƒqƒ“ƒg‚Å‚à‚¢‚¢‚Ì‚ÅA‹³‚¦‚Ä‚¢‚½‚¾‚¯‚È‚¢‚Å‚µ‚傤‚©H
40:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/10 00:10:05
Update‚Á‚Ă₂̋Lq‚ª‚È‚¢‚¯‚ÇAComplete‚Å‚¢‚¢‚Ì‚©‚ÈB
–â‘è‚ÍŽ©•ª‚ðŠÇ—‚µ‚Ä‚¢‚évector‚ð‚Ç‚¤‚â‚Á‚Ä’m‚é‚©A
‚ǂ̃^ƒCƒ~ƒ“ƒO‚Å’m‚é‚ׂ«‚©‚Á‚Ä‚±‚Æ‚¾‚æ‚ËB
C‚̃Cƒ“ƒXƒ^ƒ“ƒX‚æ‚è‚àBaseList‚ÌŽõ–½‚ª’·‚¢‚±‚Æ‚ªŠmŽÀ‚È‚çA
std::vector<Base *> *m_pBaseList;
‚ðC‚ɒljÁ‚µ‚ăRƒ“ƒXƒgƒ‰ƒNƒ^‚Å“n‚·‚Ì‚ªŽè‚ÁŽæ‚è‘‚¢‚ÆŽv‚¤‚¯‚ÇB
41:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/10 00:11:58
>>38
‚»‚ê‚‚ç‚¢Aƒwƒ‹ƒv‚â‹KŠi‘“Ç‚ñ‚¾‚èƒOƒO‚Á‚½‚肵‚ÄŽ©•ª‚ÅŠm”F‚µ‚悤‚æ
42:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/10 01:00:19
ŠÂ‹«FLinux gcc
XãCUI‚ÅAƒ}ƒbƒsƒ“ƒO‚ªŽ{‚³‚ê‚é‘O‚̃L[ƒR[ƒhi•¨—“IƒL[ƒR[ƒhj‚ðƒL[‚ª‰Ÿ‰º‚³‚ꂽۂɎ擾‚µ‚½‚¢‚Å‚·B
ƒXƒLƒƒƒ“ƒR[ƒh‚܂Œ჌ƒxƒ‹‚łȂ‚Ä‚æ‚Axmodmap -pk ‚â xev ‚Å’²‚ׂç‚ê‚é KeyCode ‚ɑГ–‚·‚é‚à‚Ì‚ª’š“x‚¢‚¢‚̂ł·‚ªA
showkey ‚̃\[ƒX‚ðŽQl‚É‚µ‚½•û–@‚Å‚Í /dev/console ‚ð XƒT[ƒo‚ªˆ¬‚Á‚Ä‚µ‚Ü‚Á‚Ä‚¢‚Ä•s‰Â”\A
xev ‚̃\[ƒX‚Ì•û–@‚Å‚ÍXƒEƒBƒ“ƒhƒE‚𶬂¹‚˂΂Ȃ炸ACUIã‚ÅŽÀ‘•‚·‚é•û–@‚ªŒ©‚‚©‚è‚Ü‚¹‚ñcB
ncurses ‚Ì keybound ‚È‚Ç‚àŽŽ‚µ‚Ă݂܂µ‚½‚ª‚±‚¿‚ç‚̓}ƒbƒsƒ“ƒOŒã‚̃L[î•ñ‚µ‚©“¾‚ç‚ê‚Ü‚¹‚ñ‚Å‚µ‚½B
ň« xmodmap ‚µ‚½Œ‹‰Ê‚ðƒp[ƒX‚µ‚Ä—˜—p‚·‚é‚È‚è‚łȂñ‚Æ‚©‚È‚é‚Æ‚ÍŽv‚¤‚̂ł·‚ªA
‰½‚©“s‡‚Ì—Ç‚¢•û–@‚ª‚ ‚é‚̂ł͂Ȃ¢‚©‚Æ’ú‚ß‚«‚ê‚¸Ž¿–₳‚¹‚Ä’¸‚«‚Ü‚µ‚½B
ޝŽÒ‚Ì•û‚ª‚¢‚ç‚Á‚µ‚á‚¢‚Ü‚µ‚½‚炲‹³Žö‚‚¾‚³‚¢‚Ü‚¹B
43:39
07/05/10 01:43:10
>>40
ƒŒƒX‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B
ŽQl‚É‚³‚¹‚Ä‚¢‚½‚¾‚«‚Ü‚·B
44:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/10 11:03:54
std::string‚ÌƒŠƒeƒ‰ƒ‹‚ð–„‚ßž‚ނɂ͂ǂ¤‚·‚è‚á‚¢‚¢‚̂ł·‚©
45:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/10 11:13:12
ƒŠƒeƒ‰ƒ‹‚̈Ӗ¡‚ª•ª‚©‚Á‚Ä‚é‚ñ‚¾‚낤‚©
46:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/10 11:22:21
>>42
‚»‚ÌŽí‚ÌŽ¿–â‚ÍUnixƒvƒƒOƒ‰ƒ~ƒ“ƒOŽ¿–âƒXƒŒ‚©Unix/Linux”‚̂ق¤‚ª
‰ñ“š‚𓾂ç‚ê‚â‚·‚¢‚ÆŽv‚í‚ê
47:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/10 22:01:06
ŠÂ‹«:ƒ^ƒu•4, XP, bcc5.5.1, Cpad
”L‚Å‚à‚í‚©‚éƒvƒƒOƒ‰ƒ~ƒ“ƒO / ‚bŒ¾Œê•Ò ‘æ‚P•” /
@‘æ‚U‚XÍ@URLØÝ¸(www.kumei.ne.jp)
@‘æ‚V‚OÍ@URLØÝ¸(www.kumei.ne.jp)
‘æ70͂ɂ‚¢‚ÄA#include <stdlib.h>,<ctype.h>,<string.h>
‚ª”²‚¯‚Ä‚¢‚é‚̂͂·‚®‚É‰ð‚©‚é‚̂ł·‚ªA
‘æ69Í‚©‚ç‘æ70͂ɂȂèA•ϔ錾‚Ȃǂª‘‚«Š·‚¦‚ç‚ê‚Ä‚©‚ç
ŽÀsŒ‹‰Ê‚Å"A1"‚ª“ü—͂ł«‚¸‚Ɉȉº‚̂悤‚É”»’肳‚ê‚Ä‚µ‚Ü‚¢‚Ü‚·B
@@@@if (check_location(row, col) != 0) {
@@@@@@Locate(hOut, 0, MASU + 3);
@@@@@@printf("‚»‚±‚ɂ͒u‚¯‚Ü‚¹‚ñ!");
@@@@@@goto INP;
@@@@@@}
‚Ü‚½AŒãŽè‚ð‘I‘ð‚·‚é‚Æ"A2"‚à“ü—͂ł«‚¸“¯—l‚É”»’肳‚ê‚Ü‚·A‚±‚̂Ƃ«ƒRƒ“ƒsƒ…[ƒ^‚Í"A2"‚É’u‚¯‚Ü‚·B
48:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/10 22:01:48
“ü—Í‚µ‚½"A1","A2"‚ɉ½‚ª“ü‚Á‚Ä‚¢‚é‚©’²‚ׂ邽‚ß
@@@@printf("‚»‚±‚ɂ͒u‚¯‚Ü‚¹‚ñ! @%d,%d", row, col);
‚Æ‚·‚邯A(0,0)A(0,1) ‚ƂȂè–â‘è‚Í–³‚¢‚Í‚¸‚Ȃ̂ł·‚ª
‰½ˆ‚𒼂µ‚½‚ç—Ç‚¢‚Ì‚©‚í‚©‚è‚Ü‚¹‚ñB‘æ70ÍA‘æ71Í‚ðƒRƒsƒy‚µ‚Ä‚à“¯—l‚Èó‘Ô‚Å‚·B
ƒ\[ƒX‚Ç‚·
URLØÝ¸(kansai2channeler.hp.infoseek.co.jp)
ˆÈ‰º‚Ì‚“‚¯‚¢‚µ‚³‚ñ‚̃TƒCƒg‚ł̓`ƒFƒbƒN‚³‚ê‚Ä‚¢‚Ü‚¹‚ñ‚Å‚µ‚½B
@‚“‚¯‚¢‚µ”‚̃z[ƒ€ƒy[ƒW‚½‚¿ / DevC++‚ÅC++“ü–å
@URLØÝ¸(skeishi.web.fc2.com)
ƒRƒƒ“ƒg‚܂݂ê‚ʼn˜‚¢‚Å‚·‚ª“Ë‚Áž‚Ý‚¨Šè‚¢‚µ‚Ü‚·B
49:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/11 00:09:56
É‚µ‚¢A”L‚̘b‚¶‚á‚È‚¯‚ê‚Î‘Š’k‚Éæ‚é‚ñ‚¾‚ªB
50:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/11 00:10:27
>>42
‚Â[XLibƒXƒŒ]
51:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/11 14:58:41
>>48
printf("‚»‚±‚ɂ͒u‚¯‚Ü‚¹‚ñ! %d,%d, %d", row, col, ban[row][col] );
‚±‚¤‚·‚邯AA1‚ÌŽž‚É‚Íban[0][0]‚ɂȂñ‚©’l‚ª“ü‚Á‚Ă邼B
’l‚ª“ü‚Á‚Ä‚½‚çAcheck_location‚ª!0‚ð•Ô‚·‚͎̂d•û‚È‚¢Ž–‚¾‚ÈB
‚ÅAmain()‚Ì錾’¼Œã‚ɉŠú‰»‚µ‚Ă݂½‚ªA
// init
for ( row=0; row<MASU; ++row )
for ( col=0; col<MASU; ++col )
ban[row][col] = 0;
‚»‚ê‚Å‚àŒ»Û‚ª•Ï‚í‚ç‚ñ‚ËB
’²‚ׂé‚Ì‚ª–Ê“|‚ɂȂÁ‚½‚©‚çAcheck_location‚ð‰ü•Ï‚µ‚Ä‚¨’ƒ‚ð‘÷‚·B
int check_location(int row, int col) {
if (ban[row][col]!=1 && ban[row][col]!=2)
return 0;
else
return -1;
}
‚±‚ê‚ÅA1‚É’u‚¯‚邿‚¤‚ɂȂÁ‚½‚¼B
‚Å‚à‚È‚ñ‚©Î‚ðŽæ‚éƒƒWƒbƒN‚Æ‚©ƒoƒO‘½‚‚È‚¢‚©H‚—
52:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/11 20:30:51
class A
{
public:
virtual A& a()
{
return *this;
}
};
class B : public A {};
int main()
{
B b = A().a();
}
‚Æ‚·‚邯A‚ðB‚ɕϊ·‚Å‚«‚È‚¢‚Á‚Ä“{‚ç‚ê‚邯‚ÇA‚¢‚¿‚¢‚¿B‚Å‚àa()‚ðƒI[ƒo[ƒ‰ƒCƒh‚µ‚È‚¢‚ƃ_ƒH
—‹ü‚Í•ª‚©‚é‚ñ‚¾‚¯‚ÇAŒp³‚µ‚Ä‚é‚ñ‚¾‚©‚矎è‚ɕϊ·‚µ‚Ä‚‚ê‚è‚á‚¢‚¢‚Ì‚ÉEEE
ª‚Ý‚½‚¢‚È‚±‚Æ‚â‚é‚̂ɉ½‚©—Ç‚¢•û–@‚È‚¢‚Å‚·‚©H
53:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/11 20:42:31
>>52
> B b = A().a();
‚Å‚Í B(const A&) ‚Æ‚¢‚¤ƒRƒ“ƒXƒgƒ‰ƒNƒ^‚ªŒÄ‚΂ê‚鎖‚ɂȂéB
‚¾‚©‚çA‚»‚ê‚ðì‚é•K—v‚ª‚ ‚éB
54:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/11 20:55:35
>>53
ƒTƒ“ƒNƒXB”h¶‚·‚邽‚тɂ¢‚¿‚¢‚¿–Ê“|‚ÈEEE
B‚©‚çŒÄ‚΂ꂽa()‚Ìthis‚ÍB‚̃|ƒCƒ“ƒ^‚È‚ñ‚¾‚©‚çB‚É‘ã“ü‚Å‚«‚Ä‚à—Ç‚¢‚ÆŽv‚¤‚ñ‚¾‚¯‚ǂȂŸB
‚È‚ñ‚ÅŸŽè‚É virtual B& a() ‚ð’è‹`‚µ‚Ä‚‚ê‚È‚¢‚ñ‚¾‚낤B
55:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/11 20:58:34
î•ñ‚ª‘«‚è‚È‚¢‚ñ‚¾‚©‚ç“–‚½‚è‘O‚¶‚áB
56:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/11 21:03:58
>>54
B‚©‚çŒÄ‚΂ꂽ‚Á‚Ăǂ¤‚¢‚¤‚±‚ÆH >>52 ‚Å‚Í A() ‚ɑ΂µ‚Ä a() ‚ðŒÄ‚Ño‚µ‚Ä‚é‚ñ‚¾‚ëB
B& ‚È‚ñ‚ĕԂ¹‚é‚킯–³‚¢B
57:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/11 21:10:59
virtual B& a() ‚ªŸŽè‚É’è‹`‚³‚ê‚é‚È‚ÇA‚È‚ñ‚Ä‹°‚낵‚¢((((;ß„Dß)))¶Þ¸¶Þ¸ÌÞÙÌÞÙ
58:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/11 22:00:41
sizeof(A) != sizeof(B)
‚¾‚Á‚½‚ç‚Ç‚¤‚È‚é‚ÆŽv‚¤H
59:42
07/05/11 23:25:57
ƒAƒhƒoƒCƒXE—U“±‚ð‚µ‚Ä’¸‚¢‚½•ûA‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B
”÷–‚ȃXƒŒˆá‚¢‚Å\‚µ–ó‚ ‚è‚Ü‚¹‚ñ‚Å‚µ‚½B
60:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/12 00:10:17
printf("%s/n","Hello World");
ã‚Ìprintf•¶‚Ì%s‚łǂ̂悤‚É"Hello World"‚ðˆ—‚µ‚Ä‚¢‚é‚Ì‚©•ª‚©‚è‚Ü‚¹‚ñB
‚ǂȂ½‚©‚²‹³Žö‚µ‚ĉº‚³‚¢B
61:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/12 00:23:25
X‚ÌCUI‚Á‚Ăǂ¤‚¢‚¤‚±‚ÆHxtermã‚Å‹N“®‚µ‚Ä‚½‚肵‚½‚çA
‚»‚ê‚ðŒŸo‚µ‚ÄX->xterm‚Ì“ü—Í‚ð‘~‚Á•¥‚¤‚Á‚Ă͂ȂµH
kterm‚Æ‚©mlterm‚Æ‚©‚¾‚Á‚½‚èAŠÔ‚Éscreen‚ª‚Í‚³‚Ü‚Á‚Ä‚½‚èA
‚µ‚½‚ç‚Ç‚¤‚·‚é‚킯H
62:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/12 00:29:52
’Ü—kŽ}‚łƂé
63:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/12 00:34:05
‚·‚¢‚Ü‚¹‚ñCc++•׋Žn‚ß‚½‚΂©‚è‚Ì’´‰SŽÒ‚Å‚·D
‚Æ‚ ‚éc++‚̃\[ƒX‚ðc#‚É‘‚«Š·‚¦‚邯‚¢‚¤ì‹Æ‚ð‚µ‚Ä‚¢‚é‚̂ł·‚ªC‰º‹L‹Lq‚̈Ӗ¡‚ª‚í‚©‚è‚Ü‚¹‚ñ‚Å‚µ‚½D
MyClass* mc;
mc = (Myclass*) aList -> at(n);
aList‚Í List* aList‚Å錾‚µ‚Ä‚ ‚è‚Ü‚·D
‚È‚ºƒŠƒXƒgŒ^‚̃|ƒCƒ“ƒ^‚Ì‘O‚ÅCÄ“xƒNƒ‰ƒX‚̃|ƒCƒ“ƒ^‚ð()‚Ì’†‚É‹Lq‚·‚é‚̂łµ‚傤‚©H
‚Ç‚¤‚¼‚æ‚낵‚‚¨Šè‚¢‚¢‚½‚µ‚Ü‚·D
64:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/12 00:36:25
—D懈ÊB
mc = (Myclass*) ( aList -> at(n) );
65:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/12 00:47:46
>>63
‚»‚ê‚̓LƒƒƒXƒg‰‰ŽZB
aList‚ÍATŒ^‚̃IƒuƒWƒFƒNƒg‚ð—v‘f‚Æ‚µ‚Ä‚â‚è‚Æ‚è‚·‚邿‚¤‚ɂȂÁ‚Ä‚¢‚é‚Ì‚¾‚ÆŽv‚¤B
iT‚ª‰½‚Ȃ̂©‰´‚ɂ͂킩‚ç‚È‚¢‚Ì‚ÅA‚±‚ê‚͉¼Ìj
‚»‚µ‚ÄaList->at‚Ì–ß‚è’l‚ÌŒ^‚ÍT*B
MyClass‚ÍT‚©‚ç”h¶‚µ‚Ä‚¨‚èAMyClass‚ւ̃|ƒCƒ“ƒ^‚Öƒ_ƒEƒ“ƒLƒƒƒXƒg‚µ‚Ä‚¢‚é‚Ì‚¾‚낤B
C#‚͂킩‚邯‚¢‚¤‚È‚çAaList‚ÌŒ^‚ªSystem.Collections.ArrayListA
T*‚ÍobjectAat‚ðƒCƒ“ƒfƒNƒT‚¾‚ÆŽv‚¦‚ÎŽ–î‚Í‘å‘Ì“¯‚¶B
66:63
07/05/12 01:02:07
>>64
>>65
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½D
ƒLƒƒƒXƒg‚¾‚Á‚½‚ñ‚Å‚·‚ËDDDƒ|ƒCƒ“ƒ^‚ɃLƒƒƒXƒg‚Å‚«‚é‚Á‚ĉ‚߂Ēm‚è‚Ü‚µ‚½D
‚Ü‚½l‚¦‚Ă݂܂·D
67:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/12 01:18:27
>>60
const char* str = "Hello World";
printf("%s/n", str);
‚±‚¤‘‚¯‚΂킩‚é‚©?
68:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/12 01:53:38
>>67
str‚̃|ƒCƒ“ƒ^‚ªŽw‚·'H'‚̃AƒhƒŒƒX‚©‚ç'\0'‚܂ł̕¶Žš‚ð%s‚ª•¶Žš—ñ‚Æ‚µ‚Ä•\ަ‚µ‚Ä‚‚ê‚é
‚Æ‚¢‚¤‚±‚Ƃł·‚©H
69:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/12 01:57:00
>>51
ban[row][col]A‹C‚ª‚‚«‚Ü‚¹‚ñ‚Å‚µ‚½A’l‚ª“ü‚Á‚Ä‚µ‚Ü‚Á‚Ă܂·‚ËB
‰Šú‰»‚Ɖü•ς̗¬‚ê‚܂ŋ³‚¦‚Ä‚¢‚½‚¾‚«‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½B
ƒƒWƒbƒN‚Í”L‚ÉK‚Á‚ĂƂ¢‚¤‚±‚Æ‚ÅA
‚ ‚Æ‚ ‚ÆƒŠƒo[ƒV‚̃Aƒ‹ƒSƒŠƒYƒ€‚ð•׋‚·‚邯‚«‚É‚¿‚á‚ñ‚Æ‚µ‚½‚à‚Ì‚ðƒSƒŠƒSƒŠ‚µ‚Ü‚·B
70:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/12 10:32:53
>>68
uprintf ‘Ž®Žw’èv‚ŃOƒO‚é‚©AŠJ”ŠÂ‹«‚É•t‚¢‚Ä‚éƒ}ƒjƒ…ƒAƒ‹“Ç‚ß
71:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/12 14:52:41
sprintfŽg‚Á‚Ä‚Ý
72:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/12 20:23:20
std::string‚ðŒp³‚µ‚ÄAƒƒ“ƒoŠÖ”‚ð‘‚₵‚½ƒNƒ‰ƒX‚ðì‚肽‚¢‚ñ‚Å‚·‚ªA
i‹ï‘Ì“I‚É‚ÍA’†gUTF-8n‚É“Á‰»‚µ‚½•¶Žš—ñƒNƒ‰ƒX‚ðì‚肽‚¢j
class my_string : public std::string
{
public:
@@my_string() : std::string() {}
@@my_string(const char* src) : std::string(src) {}
@@my_string(const my_string& src) : std::string(src) {}
@@c
}
‚±‚ñ‚ÈŠ´‚¶‚ŃRƒ“ƒXƒgƒ‰ƒNƒ^‚ð‚¸‚ç‚¸‚ç‘‚¢‚Ä‚¢‚Á‚ÄA
‚ ‚Ƃ͎©•ª‚ÌD‚«‚È‚¾‚¯ƒƒ“ƒoŠÖ”‘‚₵‚Ä‚¢‚‚¾‚¯‚Å‘åä•v‚Å‚·‚©H
73:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/12 20:43:44
>>72
std::string ‚̓fƒXƒgƒ‰ƒNƒ^‚ªƒo[ƒ`ƒƒƒ‹‚¶‚á–³‚¢‚Ì‚ÅA
ƒIƒuƒWƒFƒNƒg‚Ì휎ž‚ɂ͒ˆÓ‚ª•K—vB
‹ï‘Ì“I‚É‚ÍA
std::string *str = new my_string("('A')");
...
delete str;
‚Æ‚â‚邯std::string‚̃fƒXƒgƒ‰ƒNƒ^‚ªŒÄ‚΂ê‚Ä‚µ‚Ü‚¤B
‚Ù‚Æ‚ñ‚Ç‚Ìꇂ͑åä•v‚¾‚ÆŽv‚¤‚Ì‚¾‚¯‚ÇA
‚Ó‚Æ‚µ‚½”Žq‚ɂ͂܂邱‚ƂɂȂ邩‚à‚µ‚ê‚È‚¢B
74:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 09:14:28
wstring‚Å‚àŽg‚Á‚Æ‚¯
75:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 14:59:30
ŠÖ”‚Ì‘O‚ɃRƒƒ“‚ð“ñ‚•t‚¯‚é‚Ì‚Í
‰½‚̈Ӗ¡‚ª‚ ‚é‚ñ‚Å‚µ‚傤‚©H
76:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 15:21:14
a‚ª1‚©‚»‚êˆÈŠO‚ɂȂéƒ^ƒCƒ~ƒ“ƒO‚̓vƒƒOƒ‰ƒ}‚ªŠ®‘S‚É”cˆ¬‚Å‚«A
ˆ—nanntoka‚ª•p”ɂɋN‚±‚éꇂɂ¨‚¢‚ÄA
//hinnpann
if(a==1){
@//nanntoka
}
‚Æ‚·‚é‚©
//junnbi
void voidfunc(){}//‰½‚à‚µ‚È‚¢ŠÖ”
void nanntokafunc(){ /* nanntoka */ }
void(*pfunc)();//a==1‚È‚çnanntokafunc‚ªA‚»‚êˆÈŠO‚È‚çvoidfunc
//hinnpann
pfunc();
‚Æ‚·‚é‚©‚Å‚ÍAŒãŽÒ‚Ì•û‚ªðŒ”»’f‚ð‚µ‚È‚¢•ª‘‚¢‚ñ‚Å‚·‚©H
‚»‚ê‚Æ‚à–³‘ʂɉ½‚à‚µ‚È‚¢ŠÖ”‚ɃWƒƒƒ“ƒv‚·‚镪‚¾‚¯’x‚¢‚ñ‚Å‚·‚©H
‚ ‚ÆŽ•‚ð–‚‚Ì‚ª–Ê“|‚‚³‚¢‚Ì‚ÅA
ŽèŒy‚ÉŒû“à‚ÌŽ•C‚𶬂·‚é‹Û‚»‚Ì‚à‚̂𜋎‚·‚éƒIƒXƒXƒ‚Ì•û–@‚Á‚Ä’m‚è‚Ü‚¹‚ñ‚©H
77:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 15:26:54
>>76
‘¬“x‚ÍŽÀ‘ª‚ªŠî–{B
‹Û‚Ìœ‹Ž‚ɂ͋Ž_‚ðŽg‚¤‚̂͂ǂ¤‚¾‚낤H
‰–Ž_‚Æ‚©—°Ž_‚Æ‚©‚Å‚æ[‚‚¤‚ª‚¢‚·‚ê‚ÎA‚«‚Á‚ƋۂȂñ‚Ķ‚«‚Ä‚ç‚ê‚È‚¢‚Í‚¸B
78:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 15:27:45
>>75 ƒXƒR[ƒv‰ðŒˆ‰‰ŽZŽq
79:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 15:32:41
‚â‚Á‚Ï‚èCPU‚É‚æ‚Á‚ĈႢ‚Ü‚·‚æ‚ËEEEB
u•p”Év‚Æ‚©AžB–†‚È•\Œ»‚ð‚µ‚Ä‚·‚݂܂¹‚ñ‚Å‚µ‚½B
‰–Ž_‚â—°Ž_‚ÍA—û‚莕–‚«•²‚É“ü‚Á‚Ă镪‚¾‚¯‚Å‚à’É‚¢‚Ì‚É
ƒŠƒXƒeƒCƒ“‚Ȃǂ͋ƒ‚«‚»‚¤‚ɂȂé‚Ù‚ÇŒµ‚µ‚¢‚Å‚·B
ƒ~ƒ…[ƒ^ƒ“ƒX‹Û‚à¶‚«‚邽‚߂ɕKŽ€‚¾‚©‚çA‚»‚¤‚»‚¤‚¤‚Ü‚¢˜b‚È‚ñ‚Ä‚ ‚è‚Ü‚¹‚ñ‚æ‚ËB
80:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 18:11:27
…Ž_‰»ƒiƒgƒŠƒEƒ€‚â…Ž_‰»ƒJƒŠƒEƒ€‚È‚ñ‚©‚Ì‹‰–Šî‚Å‚à‹Û‚ð”j‰ó‚Å‚«‚Ü‚·B
81:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 19:35:17
>>75
ƒOƒ[ƒoƒ‹ƒXƒR[ƒv‚¾‚ËB
ƒ[ƒJƒ‹‚Æ–¾Ž¦“I‚É•ª‚¯‚éꇂɕK—v
82:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 20:29:41
// Foo.h
class Foo {
private:
int a;
public:
static int GetA() const
};
// Foo.cxx
#include "Foo.h"
int Foo::GetA const
{
return a;
}
‚Á‚Ä‚¢‚¤‚Ì‚ÍA‚È‚ñ‚©ŠÔˆá‚Á‚Ă܂·‚©H
GCC‚Å
./include/Foo.h:6: error: static member function 'static int GetA()' cannot have cv-qualifier
src/Foo.cxx:2: error: static member function 'intt Foo::GetA() const' declared with type qualifiers
‚Æ“{‚ç‚ê‚Ü‚·B
staticƒƒ“ƒoŠÖ”‚Á‚Äconst‚Éo—ˆ‚È‚¢‚ñ‚Å‚µ‚傤‚©B
83:82
07/05/13 20:31:18
ŠÈ—ª‰»‚µ‚Ä‘‚‚Æ‚«‚É‘‚«ŠÔˆá‚¦‚Ü‚µ‚½B
ŽÀÛ‚É‚ÍAint a‚Ístatic‚ɂȂÁ‚Ä‚¢‚ÄA
Foo.cxx‚Ì’†‚Å’è‹`‚³‚ê‚Ă܂·B
84:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 20:34:34
static‚Íthis‚ª‚È‚¢‚Æ‚¢‚¤Žw’è‚Ȃ̂ÉA
this‚ðconst‚É‚·‚éŽw’è‚𕹗p‚µ‚Ä‚àŽd•û‚È‚¢
85:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 20:34:35
„src/Foo.cxx:2: error: static member function 'intt Foo::GetA() const' declared with type qualifiers
inttH
ƒZƒ~ƒRƒƒ“‚à‚È‚¢‚µA’Pƒƒ~ƒX‚¶‚á‚ËH
86:82
07/05/13 20:40:11
>>84
‚ [A‚È‚é‚Ù‚ÇB‚»‚¤‚¢‚¤‚±‚Ƃł·‚©B
>>85
ŽÀۂ̃R[ƒh‚Í‚à‚Á‚Æ’·‚¢‚Ì‚ÅA
”²‚«o‚µ‚Ä‘‚¢‚Ă܂·B
intt‚Æ‚©AGetA‚É()‚ª‚‚¢‚ĂȂ¢‚̂Ƃ©‚ÍA
ŠÈ—ª‰»‚µ‚½‚Æ‚«‚̑ł¿ŠÔˆá‚¢B
‚Á‚Ä[‚±‚Æ‚ÍA—Ⴆ‚ÎGetA‚Ì’†‚Åa++‚Æ‚©‚â‚Á‚½‚è‚Æ‚©‚µ‚ÄA
constŠÖ”‚É‚µ‚Ä‚¨‚¯‚΃Rƒ“ƒpƒCƒ‰‚ª’ˆÓ‚µ‚Ä‚‚ê‚é‚Ì‚ÉA
‚Á‚Ä‚¢‚¤‚̂͊ú‘Ò‚Å‚«‚È‚¢‚Æ‚¢‚¤‚±‚Ƃł·‚©B
87:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 20:44:51
ŠÈ—ª‰»‚·‚邯‚«‚ɉ½ƒJŠ‚àŠÔˆá‚¦‚邿‚¤‚È‚¤‚Á‚©‚肳‚ñ‚ÍA
ŽÀۂ̃R[ƒh‚Å‚àƒ~ƒX‚µ‚Ä‚»‚¤‚¾‚È
88:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 20:48:20
ƒGƒ‰[ƒƒbƒZ[ƒW‚̓Rƒsƒy‚¾‚낤‚©‚çA
intt ‚Á‚Ä‚Ì‚ÍƒŠƒAƒ‹‚ÅŠÔˆá‚Á‚Ä‚ñ‚¶‚á‚ËH‚Á‚ÄŽv‚Á‚ÄŽw“E‚µ‚½‚ñ‚¾‚¯‚Ç‚È
89:82
07/05/13 21:00:52
–{“–‚É\‚µ–󂲂´‚¢‚Ü‚¹‚ñ‚Å‚µ‚½B
ŠF‚³‚ñA‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B
90:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 21:56:10
‚·‚݂܂¹‚ñBƒ|ƒCƒ“ƒ^‚Ì‘f–p‚È‹^–â‚Å‚·B
‚¢‚ꂱ‚Ì\‘¢‘Ìenemy‚ðŒÅ’è—̈æ‚ÉŠm•Û‚µ‚½‚¢‚Æ‚«‚Í
struct enemy {
short mainface;
short b;
struct POS Pos[32];
};
struct POS {
short X;
short Y;
};
struct enemy *enemy_struct;
enemy_struct = (enemy*)malloc(sizeof(struct enemy));
‚Å‚¢‚¢‚ñ‚Å‚·‚©H
‚ ‚Æsizeof(struct enemy*)=4‚Á‚ĂȂé‚ñ‚Å‚·‚¯‚Ç
struct enemy *enemy_struct;‚ÅÁ”‚ê‚éenemyŒ^‚ւ̃|ƒCƒ“ƒ^‚Ì
ƒƒ‚ƒŠ—̈æ‚Í4Byte‚Á‚Ä‚±‚Ƃł·‚©H
‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·B
91:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 22:04:45
>struct enemy *enemy_struct;
>enemy_struct = (enemy*)malloc(sizeof(struct enemy));
>‚Å‚¢‚¢‚ñ‚Å‚·‚©H
‚¾‚߂ł·BŒ^ˆá‚¢‚Å‚·B
>‚ ‚Æsizeof(struct enemy*)=4‚Á‚ĂȂé‚ñ‚Å‚·‚¯‚Ç
struct enemy *enemy_struct;‚ÅÁ”‚ê‚é4byte‚Å‚¨‚¯
92:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 22:11:23
‚ñ‚ñ‚ñH–â‘è‚È‚‚ËH
93:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/13 22:17:37
... = (enemy*)malloc( ...
94:90
07/05/13 23:18:34
‚·‚ñ‚Ü‚¹‚ñBŒ^ˆá‚¢‚Æ‚¢‚¤‚±‚Æ‚Í
..=(struct enemy *)malloc(..
‚Æ’ù³‚·‚ê‚΂¢‚¢‚ñ‚Å‚·‚©H
95:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 01:01:39
>>94
‚»‚¤‚¾‚ËB‚»‚ê‚Å‚¨‚‹B
ŽÀÛƒRƒ“ƒpƒCƒ‹‚µ‚Ă݂Ċm”F‚·‚ê‚΂¢‚¢‚ÆŽv‚¤‚æB
“ü‚êŽq‚Å‚ ‚Á‚Ä‚à“Á‚ÉŽg‚¢•û‚ɕςí‚è‚͂Ȃ¢‚æB
Ž©ŒÈŽQÆ\‘¢‘̂ƌĂ΂ê‚é“ÁŽê‚È“ü‚êŽq‚ÍŠµ‚ê‚é‚܂Ŗï‰î(е‚ê‚ê‚Ε֗˜)
‚È‚ñ‚¾‚¯‚ÇA¡‰ñ‚Í‚»‚ê‚¶‚á‚È‚¢‚µB
‚É‚µ‚Ä‚àAshort•Ï”‚Æ‚©”÷–‚Ȃ̎g‚¤‚È‚ B
‚Æ‚±‚ë‚Åstruct‚ªÈ—ª‚Å‚«‚È‚¢‚Á‚ÄŽ–‚ÍC‚ðŽg—p‚µ‚Ä‚¢‚é‚ñ‚¾‚ËB
C++‚Å‚ÍÈ—ª‚ª‹–‚³‚ꂽ‚Í‚¸Bu//v‚É‚æ‚éƒRƒƒ“ƒg‚Ý‚½‚¢‚É
C++‚Åæ‚Éì‚ç‚ê‚Ä‚©‚çŒã‚ɂȂÁ‚ÄAANSI‚ªC‚Ì•¶–@‚Æ‚µ‚Ä”F‚ß‚½‚à‚Ì‚à
‚ ‚é‚©‚ç«—ˆ‚Í>>90‚̂悤‚È‘‚«•û‚à‹–‚³‚ê‚é‚©‚àB
‚Ü‚ typedef‚·‚ê‚Ηǂ¢‚¾‚¯‚È‚ñ‚¾‚¯‚Ç‚ËB
96:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 01:08:45
printf("1¥n");
printf("2¥n");
printf("3¥n");
‚Æ‚µ‚½‚ ‚Æ‚É1A2A3‚ð4A5A6‚Æã‘‚«‚µ‚½‚¢‚ñ‚Å‚·‚ªA
CR‚Åæ“ª‚É–ß‚é‚͕̂ª‚©‚é‚̂ł·‚ªiÅIs‚Íã‘‚«‰Â”\jA
1s‘O‚É–ß‚é‚Á‚Ă̂͂ł«‚é‚ñ‚Å‚µ‚傤‚©H
97:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 01:18:53
‚»‚ê‚͈—ŒnˆË‘¶‚È•û–@‚ðŽg‚í‚È‚¢‚ƃ_ƒ
ƒGƒXƒP[ƒvƒV[ƒPƒ“ƒX‚Æ‚©AConsoleAPI‚Æ‚©
98:96
07/05/14 01:26:38
>>97
‚·‚¢‚Ü‚¹‚ñBŠÂ‹«‘‚«–Y‚ê‚Ă܂µ‚½BiVT100‘Š“–j
ƒGƒXƒP[ƒvƒV[ƒPƒ“ƒX‚ŃOƒO‚Á‚ÄA
printf("¥x1b[3A");
‚Å‰ðŒˆ‚µ‚Ü‚µ‚½B
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B
99:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 01:52:37
>>90‚Ì‚â‚è•û‚Å‚àƒRƒ“ƒpƒCƒ‹‚Í’Ê‚é‚ñ‚¾‚ÈB
100:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 12:50:17
asdf<int (int)> a;
‚Ý‚½‚¢‚ÈŽ–‚ª‚µ‚½‚¢‚ñ‚Å‚·‚ªAasdf‚Ì’è‹`‚͂ǂ¤‚¢‚¤•—‚É‚·‚ê‚Ηǂ¢‚©‚͂Ȃñ‚ăOƒO‚ê‚ÎÚ‚µ‚o‚Ä‚‚é‚ñ‚Å‚µ‚傤‚©
101:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 12:53:32
boost::function
102:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 12:54:17
‚È‚é‚Ù‚Ç
103:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 13:00:06
asdf<int (*)(int)> a;
‚Ì‚±‚Æ‚©H
104:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 13:03:15
‚È‚ñ‚¾‚Æ
105:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 14:32:49
CŒ¾Œê‚Ì‚ ‚éƒvƒƒOƒ‰ƒ€‚ÅA
Cƒtƒ@ƒCƒ‹‚ł͂ȂAhƒwƒbƒ_‚É
ŠÖ”‚ðŽÀ‘•‚µ‚Ä‚¢‚él‚ª‚¢‚é‚ñ‚Å‚·‚¯‚Ç
•’ʂȂñ‚Å‚·‚©H
‚â‚Á‚Ï‚èƒwƒbƒ_‚ÉŽÀ‘•‚·‚é•û‚ªƒxƒ^[‚È‚ñ‚Å‚µ‚傤‚©H
106:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 14:42:46
‚Í‚Á‚«‚茾‚Á‚ĂǂÁ‚¿‚Å‚à—Ç‚¢B
‹Zp“I‚łȂ¢˜b‘è‚̓}”‚Ö
107:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 15:00:45
‚Ç‚Á‚¿‚Å‚à—Ç‚‚È‚¢‚æw
ƒwƒbƒ_‚ÉŽÀ‘•‚Å‚«‚é‚Ì‚Í“à•”ƒŠƒ“ƒP[ƒW‚ÌŠÖ”‚¾‚¯‚¾‚¯‚ÇA
‚»‚ñ‚È‚±‚Æ‚â‚Á‚¿‚á‚Á‚½‚瓯‚¶ŠÖ”‚ª•¡”‚̃\[ƒX‚É’è‹`‚³‚ê‚Ä
–³‘ʂɂà’ö‚ª‚ ‚é󋵂ɂȂéB
ƒwƒbƒ_‚ÉŽÀ‘•‚·‚é•K—v‚ª‚ ‚é‚̂̓Cƒ“ƒ‰ƒCƒ“ŠÖ”‚¾‚¯B
‘¼‚Í•’ʂ̓wƒbƒ_‚ÉŽÀ‘•‚µ‚Ă͂¢‚¯‚È‚¢B
108:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 15:11:06
ƒCƒ“ƒNƒ‹[ƒhƒK[ƒh‚â‚Á‚Ä‚½‚©‚ç‹C‚©‚È‚©‚Á‚½
109:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 15:16:39
ƒCƒ“ƒNƒ‹[ƒhƒK[ƒh‚Ƃ͊֌W‚È‚¢˜bB
a.h ‚ð a.c ‚Æ b.c ‚ŃCƒ“ƒNƒ‹[ƒh‚·‚ê‚Î
a.c ‚Æ b.c ‚Ì—¼•û‚ÉŠÖ”’è‹`‚ª“WŠJ‚³‚ê‚éB
110:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 15:17:55
ƒCƒ“ƒNƒ‹[ƒhƒK[ƒh‚µ‚Ä‚è‚á‚»‚ñ‚È‚¯‚Á‚½‚¢‚È‚±‚Ƃɂ͂Ȃç‚ñ‚¾‚ëB
111:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 15:18:54
‚ÆAŽv‚Á‚½‚ª‚È‚é‚ÈBƒXƒ}ƒ“
112:105
07/05/14 15:23:06
‚»‚¤‚Å‚·‚ËB•׋‚ɂȂè‚Ü‚µ‚½B
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½B
113:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 15:48:21
C++ ‚¾‚ƃeƒ“ƒvƒŒ[ƒg‚ÌŽÀ‘•‚àƒwƒbƒ_‚É‘‚•K—v‚ª‚ ‚éB
export ‚È‚ñ‚Ä‚ ‚Á‚ĂȂ¢‚悤‚ÈŽd—l‚¾‚µB
ƒNƒ‰ƒX‚Ì錾“à‚É’¼ÚŠÖ”’è‹`‚·‚邱‚Æ‚à‚ ‚邯‚ÇA
‚±‚ê‚̓Cƒ“ƒ‰ƒCƒ“ŠÖ”‚ɂȂ邩‚ç >>107 ‚͈͓̔àB
114:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 16:55:40
>>a.h ‚ð a.c ‚Æ b.c ‚ŃCƒ“ƒNƒ‹[ƒh‚·‚ê‚Î
>>a.c ‚Æ b.c ‚Ì—¼•û‚ÉŠÖ”’è‹`‚ª“WŠJ‚³‚ê‚éB
‚»‚ê‚͂ւ½‚‚»‚ȃCƒ“ƒNƒ‹[ƒhƒK[ƒhB
ŠÖ”‚Ìd•¡ƒCƒ“ƒN‚ɂȂç‚ñ‚â‚è•û‚Í‚¿‚å‚Á‚Æl‚¦‚ê‚Ý‚êB’¼‚®‚í‚©‚é‚â‚ëB
a.h
@#ifndef c
a.c
@#incliude "a.h"
@c
b.c
@#incliude "a.h"
@c
‚½‚¾‚µA‚»‚ꂪƒGƒG•û–@‚â‚Æ‚ÍŒ¾‚¤‚Ăւñ‚ÇB
115:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 17:06:20
>>114
d•¡ƒCƒ“ƒNƒ‹[ƒh‚ª–â‘è‚Ȃ̂ł͂ȂA“¯‚¶ŠÖ”‚ª•¡”ƒŠƒ“ƒN‚³‚ê‚邱‚Æ‚ª–â‘èB
—‰ð‚Å‚«‚Ä‚¢‚È‚¢‚È‚çA–³—‚ɃŒƒX‚µ‚È‚‚Ä‚¢‚¢‚©‚ç‚ËB
116:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 17:38:43
>>d•¡ƒCƒ“ƒNƒ‹[ƒh‚ª–â‘è‚Ȃ̂ł͂ȂA“¯‚¶ŠÖ”‚ª•¡”ƒŠƒ“ƒN‚³‚ê‚邱‚Æ‚ª–â‘èB
>>—‰ð‚Å‚«‚Ä‚¢‚È‚¢‚È‚çA–³—‚ɃŒƒX‚µ‚È‚‚Ä‚¢‚¢‚©‚ç‚ËB
‚¾‚©‚çAu“¯‚¶ŠÖ”‚ª•¡”ƒŠƒ“ƒN]‚³‚ê‚È‚¢•û–@‚ª‚ ‚é‚Á‚ÄŒ¾‚¤‚Æ‚ñ‚¶‚áAˆ¢•ð‚©‚¢‚ÈB
‚»‚ê‚Æ‚àAƒzƒ“ƒ}‚̉SŽÒ‚©H
117:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 17:46:42
‚»‚¤‚¢‚¤•û–@‚ª‚ ‚é‚ñ‚©‚µ‚ç‚ñ‚ªA>>114‚ł͉½‚Ì‰ðŒˆ‚É‚à‚È‚Á‚ĂȂ¢B
118:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 17:48:08
>>116
„u“¯‚¶ŠÖ”‚ª•¡”ƒŠƒ“ƒN]‚³‚ê‚È‚¢•û–@‚ª‚ ‚é
‚¾‚Á‚½‚ç‚»‚ê‚ð‘‚«‹‹‚¦B
–Þ‚àA‚»‚ê‚Ȃ炻‚ê‚Å>114‚ÌuŠÖ”‚Ìd•¡ƒCƒ“ƒN‚ɂȂç‚ñ‚â‚è•ûv‚Í
ˆê‘Ì‘S‘̂Ȃñ‚Ȃ̂©‚Æ‚¢‚¤‹^–â‚ÍŽc‚邪B
119:‚114
07/05/14 17:51:13
>>118
‚±‚ê‚ÅOKB
--a.h
#ifdef NEED_FUNC
void func() {}
--a.c
#define NEED_FUNC
#include "a.h"
--b.c
#include "b.h"
--
‚½‚¾‚µA‚±‚ê‚ðƒCƒ“ƒNƒ‹[ƒhƒK[ƒh‚Ƃ͌¾‚í‚È‚¢‚ÆŽv‚¤B
120:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 17:53:03
‚»‚ꂾ‚Æa.c‚Åfunc‚ªŽg‚¢‚½‚¢‚Æ‚«‚É¢‚邾‚ëB
121:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 17:54:27
114‚̃Cƒ“ƒNƒtƒ@ƒCƒ‹’†‚Ì‹Lq‚ÅA‚¿‚å‚Á‚ÆH•v‚µ‚½‚çiƒqƒ“ƒg‚ÍŠÖ”‚Ì’è‹`‚¶‚áj‚Å‚«‚邯Œ¾‚¤‚Æ‚ñ‚¶‚áB
‚±‚ꂾ‚¯Œ¾‚¤‚½‚çA•’Ê‚ÌCŒ¾Œê‚P”N–VŽå‚Å‚à‹C‚ª•t‚‚ÇB‹C‚ª•t‚©‚ñ‚悤‚È‚çAC’ú‚ß‚½•û‚ª‚¦‚¦‚ÅB
‚»‚ê‚æ‚èA‚±‚ñ‚ȃŒƒxƒ‹‚ʼnSŽÒ‚ð‹³‚¦‚é‚ÈI@‰SŽÒ‚à–À˜f‚¶‚áB
>>‚¾‚Á‚½‚ç‚»‚ê‚ð‘‚«‹‹‚¦B
’N‚ÉŒü‚©‚Á‚ÄŒ¾‚¤‚Æ‚ñ‚¶‚áAƒ{ƒPB
122:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 17:55:50
‚·‚݂܂¹‚ñAŒ–‰Ü‚µ‚È‚¢‚Å’¸‚¯‚Ü‚·‚©H
123:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 17:56:24
>>121
•ª‚©‚ç‚È‚‚Ä‚à•ʂɌ떂‰»‚³‚È‚‚Ä‚¢‚¢‚æB
‰´‚¾‚Á‚Ä•ª‚©‚ñ‚È‚¢‚ñ‚¾‚à‚ñB
124:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 17:58:28
‚Ü‚¾‚í‚©‚ç‚ñ‚©H
‚»‚à‚»‚àhŠÖ”–¼h‚ĉ½‚âH
125:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 17:58:51
‚Ü‚³‚©static‚ð•t‚¯‚邯‚¢‚¤ƒIƒ`‚Å‚ÍEEE
126:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 17:59:44
void foo ( ƒiƒ“‚½‚炱‚½‚çc
ª‚Å "foo" ‚͉½‚ð‚µ‚Æ‚é‚ñ‚âH
127:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:00:37
#define foo
ª‚Å foo ‚͉½‚ð‚³‚ê‚Æ‚ñ‚Ë‚ñH
128:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:00:44
>>121
‚à‚¿‚ë‚ñ‚»‚Ì•û–@‚Å‚ÍA
* a.h ‚ÉŠÖ”‚ÌŽÀ‘•‚ð‹Lq‚·‚éB
* a.c, b.c ‚ŃCƒ“ƒNƒ‹[ƒh‚·‚ê‚΂ǂ¿‚ç‚©‚ç‚Å‚àŽg‚¦‚éB
* ŠÖ”‚Íd•¡‚µ‚ÄƒŠƒ“ƒN‚³‚ê‚È‚¢B
‚ª–ž‚½‚³‚ê‚é‚ñ‚¾‚æ‚ÈB
129:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:01:33
>>127
ł炳‚È‚¢‚Å‚‚ê‚æ
130:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:01:36
“–‚½‚è‘O‚¾‚̃Nƒ‰ƒbƒJ
131:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:02:38
‚à‚Á‚½‚¢‚Ô‚Á‚¿‚á‚Á‚ÄA‚Ç‚¤‚¹‚»‚ñ‚È•û–@‚È‚¢‚ñ‚¾‚ëEEE
132:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:05:42
void foo ( ‚È‚ñ‚½‚炱‚½‚ç
c
void bar (‚ ‚ ‚Å‚à‚±‚¤‚Å‚à
c
#ifndef foo
printf ( "錾ςÝ" )
#else
printf ( "–¢éŒ¾" )
#endif
c
‚±‚ê‚Å‚à‚í‚©‚ç‚ñ‚©H
133:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:07:29
void foo ( ‚È‚ñ‚½‚炱‚½‚ç
#undef foo
int foo ( ‚ ‚ ‚Å‚à‚È‚¢‚±‚Å‚à‚È‚¢
‚±‚ê‚ł͂ǂâH
134:‚114
07/05/14 18:08:42
static‚‚¯‚Ä‚à“¯‚¶(“à—e‚Ì)ŠÖ”‚ª•¡”ƒŠƒ“ƒN‚³‚ê‚邱‚Ƃɂ͈Ⴂ‚È‚¢‚µ‚È‚ŸB
‘o•û‚̃\[ƒX‚©‚瓯‚¶–¼‘O‚ÅŽQÆ‚³‚ê‚é•Ê•¨‚ÌŠÖ”‚ÆŒ¾‚¤ðŒ‚¾‚ÆA
‚Ç‚¤‚É‚à‚È‚ç‚È‚¢‹C‚ª‚µ‚Ä‚«‚½B
>>132
‚Ü‚³‚©‚Ƃ͎v‚¤‚¯‚ÇAŠÖ”‚ð’è‹`‚µ‚½‚©‚Ç‚¤‚©‚ðƒfƒBƒŒƒNƒeƒBƒu‚Å
”»’è‚Å‚«‚é‚È‚ñ‚ÄŽv‚Á‚¿‚á‚¢‚È‚¢‚æ‚Ë?
‚»‚ë‚»‚볉ð‚ð‚Ç‚ñ‚Æo‚µ‚Ă݂ĂæB
135:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:08:47
’ù³
ŒëFint foo ( ‚ ‚ ‚Å‚à‚È‚¢‚±‚Å‚à‚È‚¢
³Fint foo ( ‚ ‚ ‚Å‚à‚È‚¢‚±‚¤‚Å‚à‚È‚¢
136:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:09:19
>>133
‰´“ªˆ«‚¢‚©‚ç‚í‚©‚ñ‚È‚¢‚ñ‚¾‚Á‚ÄEEE
ˆÓ’nˆ«‚µ‚È‚¢‚Å‹³‚¦‚Ä‚‚ê‚æ
137:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:12:58
‚í‚©‚Á‚½BƒŠƒ“ƒJƒfƒBƒŒƒNƒeƒBƒu‚¾ƒbi‚—
138:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:15:32
ÓIƒƒ“ƒoŠÖ”‚Æ‚µ‚ÄŽÀ‘•‚·‚邯‚©H
struct HOGE_unique{
static int hoge() { ... }
};
#define hoge Hoge_unique::hoge
139:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:17:24
‚à‚Í‚âC‚¶‚á‚È‚¢‚ª‚È
140:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:19:45
// aaa.h
#ifndef test
int test(int i){return i + 10;}
#endif
// bbb.c
#include "aaa.h"
int test ( int i );
int foo(int i){return test(i)+10;}
// main.c
#include <stdio.h>
#include "aaa.h"
void foo(int i);
int main(void){printf("%d",test(i)+foo(i);}
141:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:23:16
‘ü¡>>133‚Í>134‚ð“Ç‚ñ‚Å^‚Á‚ɂȂÁ‚Ä‚¢‚éÅ’†‚Å‚·B
ŽŸ‚ÌŒä‘õ‚ðŽv‚¢•t‚‚Ü‚Å‚à‚¤Žb‚‚¨‘Ò‚¿‚‚¾‚³‚¢B
142:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:23:51
ªƒAƒz
143:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:30:33
>>137
URLØÝ¸(sund1.sakura.ne.jp)
144:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:32:28
>>140
‚±‚ñ‚Ȃӂ¤‚ɃvƒŠƒvƒƒZƒX‚³‚ê‚Ü‚µ‚½B
// main.c
#include <stdio.h>
int test(int i){return i + 10;}
int foo(int i);
int main(void){printf("%d",test(1)+foo(1));}
// bbb.c
int test(int i){return i + 10;}
int test ( int i );
int foo(int i){return test(i)+10;}
145:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:34:23
>>140
test‚È‚ñ‚©‚Ç‚±‚Å#define‚µ‚Ä‚é‚ÌH
146:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:35:01
test ‚͉½‰ñ’è‹`‚³‚ê‚Æ‚é‚ñHƒAƒZƒuƒ‹ƒŠƒXƒgŒ©‚Ä‚ÝH
147:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:36:30
>>145
錾‚³‚ê‚Æ‚ç‚ñ‚©‚玟‚Ìtest()‚ªƒCƒ“ƒNƒ‹[ƒh‚³‚ê‚é‚Ë‚ñ‚â‚ñ‚©‚¢‚ÈB
148:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:39:30
ƒgƒŠƒbƒL‚â‚æ‚Á‚Ä•ÊXƒ‰ƒCƒu‚ł͂Ƃ¨‚ç‚ñ‚¯‚Ç‚ÈB
‚킵‚ªŒ¾‚¢‚½‚¢‚Ì‚ñ‚ÍuŒˆ‚߂‚¯‚ñ‚Èv‚¿‚イ‚±‚ÆB
149:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:40:53
$ gcc -c main.c bbb.c
$ nm main.o
00000000 b .bss
00000000 d .data
00000000 r .rdata
00000000 t .text
U ___main
U __alloca
U _foo
0000000b T _main
U _printf
00000000 T _test
$nm bbb.o
00000000 b .bss
00000000 d .data
00000000 t .text
0000000b T _foo
00000000 T _test
‚Ç‚¤Œ©‚Ä‚à—¼•û‚Étest‚ªŠÜ‚Ü‚ê‚Ä‚é‚ñ‚¾‚ª
150:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:41:22
‚‚܂èAŠÖ¼•ق̂悤‚È”Œ¾‚ÉŒ©‚¦‚é‚©‚ç‚ÆŒ¾‚Á‚ÄAŠÖ¼l‚¾‚ÆŒˆ‚߂‚¯‚é‚ÈA‚Æ‚¢‚¤‚±‚Ƃł·‚Ë?
151:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:42:26
ª‚»‚¤‚»‚¤B
‚»‚ê‚ÆAgcc ‚̓oƒJ‚â‚æ‚Á‚ĕʕʃIƒuƒWƒFì‚é‚Ë‚ñB
152:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:43:00
‚È‚ñ‚¾A‚à‚¤‚µÎ‚킹‚Ä‚‚ê‚é‚Ì‚©‚ÆŽv‚Á‚½‚çˆÓŠO‚ÉL‚тȂ©‚Á‚½‚ÈB‚ª‚Á‚©‚肾‚ºB
153:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:43:09
‚悤‚·‚é‚ɂ͂Á‚½‚肾‚Á‚½‚킯‚¾‚ë
154:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:44:08
ˆá‚¤‚â‚ëAcall _test ‚̃AƒhƒŒƒXŒ©‚ê
155:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:49:46
char line[] = "abcde¥012345¥0ABCDE";
‚Ý‚½‚¢‚È‚±‚Æ‚â‚肽‚¢‚ñ‚Å‚·‚ªA
'¥0'‚ª‚ ‚邽‚ß‚ÉA
line‚Ì’†g‚Í"abcde¥0"‚ƂȂÁ‚Ä‚µ‚Ü‚¢‚Ü‚·B
“–‚½‚è‘O‚ÆŒ¾‚¦‚Γ–‚½‚è‘O‚È‚ñ‚Å‚·‚ªA
‰ñ”ð•û–@‚Í‚ ‚é‚Å‚µ‚傤‚©B
'¥0'‚ðŠÜ‚Þ’·‚¢char”z—ñ‚ðA
class‚Ìstatic constƒƒ“ƒo•Ï”‚Æ‚µ‚ÄŽ‚½‚¹‚½‚¢‚ñ‚Å‚·B
156:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:50:49
>>155
> line‚Ì’†g‚Í"abcde¥0"‚ƂȂÁ‚Ä‚µ‚Ü‚¢‚Ü‚·B
‚Ç‚¤‚â‚Á‚ÄŠm”F‚µ‚½‚ñ‚¾‚æB
‚¿‚á‚ñ‚ÆÅŒã‚܂œü‚Á‚Ä‚¢‚é‚Í‚¸‚¾B
157:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 18:51:27
‰SŽÒƒAƒhƒoƒCƒU‚ÍA¡A‚»‚ê‚Ç‚±‚ë‚â‚ ‚è‚Ü‚¹‚ñB
158:154
07/05/14 18:52:42
u’·‚¢char”z—ñv‚Æ‚¢‚¤‚Ì‚ÍA”–œ•¶Žš‚ ‚è‚Ü‚·B
‚Ȃ̂ÅA”z—ñ’·‚ðŠm•Û‚µ‚Ä‚©‚ç1‚‚¸‚‘ã“ü‚Æ‚¢‚¤‚̂͌µ‚µ‚¢B
‚»‚ñ‚È‚à‚ñ•ʂ̃eƒLƒXƒgƒtƒ@ƒCƒ‹‚É‚µ‚Ä•K—v‚ȂƂ«‚ɓǂ߂æA
‚Æ‚¢‚¤ˆÈŠO‚̂ł¨Šè‚¢‚µ‚Ü‚·B
159:155
07/05/14 19:02:58
#include <iostream>
using namespace std;
int main()
{
char line[] = "abcde¥012345¥0ABCDE";
for(int i=0; i<18; i++){
cout << "(" << line[i] << "," << (int)line[i] << ")";
} // i
return 0;
}
$ ./a.out
(a,97)(b,98)(c,99)(d,100)(e,101)(
,10)(3,51)(4,52)(5,53)(,0)(A,65)(B,66)(C,67)(D,68)(E,69)(,0)(,0)(,0)
‚ƂȂè‚Ü‚·B
160:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 19:05:13
>>159
ƒRƒ“ƒ\[ƒ‹‚ÅŠm”F‚·‚é‚Ȃ楥¥
161:155
07/05/14 19:07:45
> line‚Ì’†g‚Í"abcde¥0"‚ƂȂÁ‚Ä‚µ‚Ü‚¢‚Ü‚·B
‚Í•s³Šm‚Å‚µ‚½B‚·‚݂܂¹‚ñB
"12345"‚Ì"12"‚ª‰üsƒR[ƒhLF=10‚ɂȂÁ‚Ä‚¢‚Ü‚·B
162:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 19:08:43
>>159
char line[] = "abcde\0" "12345\0" "ABCDE";
‚±‚¤‚µ‚Æ‚¯B
163:155
07/05/14 19:10:14
>>160
‚ ‚êH‚È‚ñ‚©‚Ü‚¸‚©‚Á‚½‚Å‚·‚©H
Œ©‚â‚·‚¢‚©‚ÆŽv‚Á‚ÄB
i=15, 16, 17‚̂Ƃ«‚É(,0)‚ƂȂÁ‚Ä‚é‚Ì‚ÅA
‚±‚±‚ɉ½‚à“ü‚Á‚ĂȂ¢‚ñ‚Å‚·‚æ‚ËB
‚È‚ñ‚Å"¥012"‚ª"¥0¥n"‚ɉ»‚¯‚Ä‚µ‚Ü‚¤‚Ì‚©B
164:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 19:12:28
"\012" ‚ª {'\0', '1', '2'} ‚ł͂Ȃ {'\012'} ‚Ƃ݂Ȃ³‚ê‚Ä‚é‚ñ‚¾‚©‚çA
”z—ñ‚Ì‘S’·‚ª2•¶Žš•ª‚Ý‚¶‚©‚‚È‚Á‚Ä‚éB
‚‚܂èÅŒã‚Ì“ñ‚‚Ì0‚Í•s³‚ȃAƒNƒZƒXB
165:155
07/05/14 19:12:35
>>162
‚»‚Ì•û–@‚ÅA
(a,97)(b,98)(c,99)(d,100)(e,101)(,0)(1,49)(2,50)(3,51)(4,52)(5,53)(,0)(A,65)(B,66)(C,67)(D,68)(E,69)(,0)
‚ɂȂè‚Ü‚µ‚½B
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B
166:155
07/05/14 19:13:53
>>164
‚ ‚ Aoct‚ʼnðŽß‚³‚ê‚Ä‚é‚킯‚Å‚·‚©B
‚È‚é‚Ù‚ÇB
167:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 19:24:34
>>159
‚Ý‚½‚¢‚É
for(int i=0; i<10; i++){
} // i
‚Æ‚©
if(hoge){
} // if
‚Á‚Ä‚¢‚¤‘‚«•û‚ð„§‚µ‚Ä‚é–{‚Á‚ÄA
‚È‚ñ‚©‚ ‚è‚Ü‚¹‚ñ‚Å‚µ‚½‚Á‚¯H
‚±‚Ì‘‚«•û‚ð‚Ç‚Á‚©‚œǂñ‚¾‹L‰¯‚ª‚ ‚é‚ñ‚Å‚·B
168:54
07/05/14 21:52:47
>>55-58
class A
{
int a;
public:
A(int i) : a(i) {}
A& geta() { return *this; }
virtual void prt() const { printf("a:%d\n", a); }
};
class B : public A
{
int b;
public:
B(int i) : A(0), b(i) {}
virtual void prt() const { printf("b:%d\n", b); }
};
int main()
{
B b(100);
b.geta().prt();
}
‚±‚ê‚ð“®‚©‚·‚Æub:100v‚Æ•\ަ‚³‚ê‚ÄAgeta()‚ÍA&‚ð–ß‚·”¤‚Ȃ̂ɎÀÛ‚Í
B&‚ð–ß‚µ‚Ä‚¢‚é–ó‚Å‚·‚æBB&‚ð•Ô‚·ƒƒ\ƒbƒh‚ðŸŽè‚É’è‹`‚µ‚Ä‚‚ꂽ‚Ù‚¤‚ª
‚æ‚Á‚Û‚ÇŽ©‘R‚¾‚ÆŽv‚¤‚ñ‚Å‚·‚ªAŽ„‚ª‹ð‚©‚µ‚¢‚±‚ÆŒ¾‚Á‚Ä‚é‚ñ‚Å‚·‚©‚ËH
169:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 22:21:23
‚¤‚ñA‚¯‚Á‚±‚¤‹ð‚©‚µ‚¢‚ÆŽv‚¤‚æcB
170:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 22:25:34
>>168‚ª—‰ð‚Å‚«‚È‚¢
‚Ç‚±‚ÅB&‚ð–ß‚µ‚Ä‚é‚ÌH
171:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 22:28:25
>>168
class C : public B
{
public:
@ A& geta()
@ {
@ @ static A a(0);
@ @ return a;
@ }
@ //ƒRƒ“ƒXƒgƒ‰ƒNƒ^‚Ù‚©È—ª
};
‚±‚̂Ƃ«A‚±‚¤‚³‚ꂽ‚ç‚Ç‚¤‚·‚éH
C c;
B& b = c;
b.geta().ptr();
BŒ^‚ÌŽ®‚ɑ΂µ‚Ägeta()‚ðŒÄ‚Ô‚ÆB&‚ª•Ô‚Á‚Ä‚‚邱‚Ƃɂµ‚½‚çA
‚±‚Ìb.geta()‚Å‚ÍAŒ^‚̃Cƒ“ƒXƒ^ƒ“ƒX‚Ö‚ÌŽQÆ‚ð•Ô‚µ‚Ä‚¢‚é‚̂Ō^ƒVƒXƒeƒ€‚ðN‚·‚±‚ƂɂȂéB
‚¾‚©‚çˆÃ–Ù“I‚É‚â‚ç‚È‚¢‚ÅAB“à‚Å‚ÍB&‚ð•Ô‚·geta‚𖾎¦“I‚ɃI[ƒo[ƒ‰ƒCƒh‚µ‚Ä‚â‚Á‚½‚Ù‚¤‚ª‚¢‚¢B
ŽŸ‚̃R[ƒh‚ÍC::geta‚ŃRƒ“ƒpƒCƒ‹ƒGƒ‰[‚ɂȂé
struct A {virtual A& geta();};
struct B : A {virtual B& geta();};
struct C : B {virtual A& geta();};
172:171
07/05/14 22:30:14
‚·‚Ü‚ñ
168‚Ìgeta‚à‰¼‘zŠÖ”‚¾‚ÆŽv‚¢ž‚ñ‚Å‚¢‚½orz
173:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 22:41:55
‚Æ‚ ‚éƒ\[ƒX‚ð“Ç‚ñ‚Å‚¢‚é‰SŽÒ‚Å‚·D
ƒNƒ‰ƒXClass1‚̃wƒbƒ_ƒtƒ@ƒCƒ‹æ“ª‚ÉC‰º‹L‚̂悤‚É‘¼‚̃Nƒ‰ƒXClass2,Class3‚Ì‹Lq‚ª‚ ‚è‚Ü‚µ‚½D
#ifndef *******
#include ************
class Class2; class Class3; ©‚±‚ê
class Class1
public ˆÈ‰º—ª
‚±‚ê‚Í‚¢‚Á‚½‚¢‚Ç‚¤‚¢‚¤ˆÓ–¡‚ðŽ‚Â‚Ì‚Å‚µ‚傤‚©H
174:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 22:57:07
Class2, Class3‚͕ʂ̂Ƃ±‚ë‚Å‚¿‚á‚ñ‚Æ’è‹`‚³‚ê‚Ă܂·‚æ
‚Á‚ăRƒ“ƒpƒCƒ‰‚É‹³‚¦‚邽‚߂̂¨‚Ü‚¶‚È‚¢
175:54
07/05/14 22:58:24
>>171
‚È‚é‚Ù‚ÇB‚»‚̂Ƃ¨‚è‚Å‚µ‚½B
ƒTƒ“ƒNƒXB
176:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/14 23:01:02
>>173
ŽŽ‚µ‚É‚»‚Ìs‚ð휂·‚é‚È‚èƒRƒƒ“ƒgƒAƒEƒg‚·‚é‚Ȃ肵‚ăRƒ“ƒpƒCƒ‹‚µ‚Ă݂ë
‚½‚Ô‚ñƒGƒ‰[“f‚‚©‚ç
177:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 02:58:46
>>168
‚»‚̃‹[ƒ‹‚Å‚¢‚‚ÆAŽ©•ª‚ÌŒ^‚̃|ƒCƒ“ƒ^‚©ŽQÆ‚ð•Ô‚·‚悤‚ȃƒ\ƒbƒh‚Í
‚·‚ׂĉºˆÊƒNƒ‰ƒX‚ÅÄ’è‹`‚·‚é•K—v‚ª‚ ‚éB
('return *this' ‚¾‚¯‚̃ƒ\ƒbƒh‚Í“Á•ʂȂñ‚Ä‚¢‚¤ƒ‹[ƒ‹‚ðÌ—p‚·‚éH)
‚¿‚Ȃ݂ÉAˆÈ‰º‚̂悤‚ȃvƒƒOƒ‰ƒ€‚ł͂ǂñ‚ÈŒ‹‰Ê‚ɂȂé‚ׂ«H
void prt3(A* obj) { printf("prt3(A)\n"); }
void prt3(B* obj) { printf("prt3(B)\n"); }
class A {
public:
@A() {}
@virtual void prt() const { printf("A::prt\n"); }
@void prt2() const { printf("A::prt2\n"); }
@// this‚ÌŒ^‚ÍA?,B? returnŽž‚¾‚¯B?
@A& geta() { prt(); prt2(); prt3(*this); return *this; }
};
class B : public A {
public:
@B() {}
@virtual void prt() const { printf("B::prt\n"); }
@void prt2() const { printf("B::prt2\n"); }
};
int main() {B b; b.geta(); }
Œ‹‰Ê
B::prt
?::prt2
prt3(?)
178:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 03:35:58
*this‚ðthis‚É‚µ‚ÄVC2003‚ŃRƒ“ƒpƒCƒ‹
Œ‹‰ÊF
B::prt
A::prt2
prt3(A)
179:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 18:49:47
VS2005,XP‚Å‚·B
HWND hwnd;
RECT rc;
GetWindowRect(hwnd,&rc);
if ((rc.bottom-rc.top) == GetSystemMetrics(SM_CYCAPTION))
‚¤‚Ü‚‚¢‚©‚È‚¢‚̂ł·‚ªA‚±‚¤‚¢‚¤”äŠr‚ÌŽd•û‚ÍŽg‚¦‚È‚¢‚̂łµ‚傤‚©H
Žg‚¦‚È‚¢ê‡A‚ǂ̂悤‚É’¼‚¹‚΂¢‚¢‚Å‚·‚©H
180:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 19:33:30
ƒNƒ‰ƒX‚ȂǂðŽg‚Á‚ÄA’Êí‘¶Ý‚µ‚È‚¢ƒTƒCƒY‚̕ϔ‚ɃAƒNƒZƒX‚Å‚«‚Ü‚¹‚ñ‚©?
intŒ^‚̕ϔ‚ð24‚Æ8ƒrƒbƒg‚É•ª‚¯‚ÄŽg‚¤‚悤‚È
x.a‚Í24bit
x.b‚Í8bit
‚Æ‚µ‚ÄŽg‚¢‚½‚¢‚ñ‚Å‚·‚ª
181:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 19:33:42
>>17
D&E‚É‚ÍA‚Å‚«‚邿‚¤‚É‚µ‚½‚Æ‚±‚ë‚ŃƒŠƒbƒg‚ª‚È‚¢iƒI[ƒo[ƒ‰ƒCƒh‚Å‚«‚鉼‘zŠÖ”‚ª‚È‚¢j‚µA
C‚ÌŒ^•ÏŠ·‚̃‹[ƒ‹‚ª¬“ׂƂµ‚Ä‚¢‚Ä“à‘ Œ^‚ðƒNƒ‰ƒX‚Æ‚µ‚Ĉµ‚¨‚¤‚Æ‚µ‚Ä‚à‚¤‚Ü‚‚¢‚©‚È‚¢‚ÆA
‚»‚¤‚Å‚«‚邿‚¤‚É‚µ‚È‚©‚Á‚½——R‚ª‘‚©‚ê‚Ä‚¢‚éB
182:180
07/05/15 19:34:31
‘ã“üAŽQÆ‚ª•’ʂ̕ϔ‚̂悤‚Éo—ˆ‚é•û–@‚ð‹³‚¦‚Ä‚‚¾‚³‚¢
183:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 19:35:55
>>180
‚Ç‚¤‚µ‚Ä‚à‚â‚肽‚¢‚È‚çAƒrƒbƒgƒtƒB[ƒ‹ƒh‚ª‚»‚Ì–Ú“I‚ÉŽg‚¦‚éB
’A‚µAˆÚA«‚ð‘å‚«‚‘¹‚È‚¤‚±‚ƂɂȂ肩‚˂Ȃ¢‚̂ŒˆÓB
184:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 19:40:06
>>183
ƒTƒ“ƒNƒX!!!
185:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 19:59:46
>>183
‚·‚݂܂¹‚ñ@bool‚Æchar‚¾‚ƂǂÁ‚¿‚ðŽg‚Á‚½•û‚ª‚¢‚¢‚Æ‚©‚ ‚è‚Ü‚·‚©???
struct A{
char n : 1; char m : 7;
};
struct A{
bool n : 1; bool m : 7;
};
186:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 20:02:53
>>179
‰½‚ð‚µ‚½‚¢‚Ì‚©•ª‚©‚ç‚ñ‚ªAŽg‚¦‚éB
187:185
07/05/15 20:07:05
Ž©ŒÈ‰ðŒˆ‚µ‚Ü‚µ‚½
ˆÚA«‚ðl—¶‚µ‚ÄAunsigned char n : 1; ‚É‚µ‚Ä‚¨‚«‚Ü‚·‚Ë
188:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 20:10:51
ˆÚA«‚ª—~‚µ‚¢‚È‚çunsigned int‚É‚µ‚Ä‚¨‚¯
189:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 20:12:37
>>188
ƒTƒCƒY‚Ío—ˆ‚邾‚¯í‚肽‚¢‚ñ‚Å‚·
ã‚Ì—á‚Å‚Í32bitŽg‚Á‚Ä‚¢‚Ü‚·‚¯‚Ç
8bitˆÈ“à‚È‚çchar‚̂ق¤‚ªí‚ê‚Ü‚·
190:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 20:13:25
ƒrƒbƒgƒtƒB[ƒ‹ƒh‚ÉŽg‚¦‚é‚Ì‚Ísigned‚©unsigned‚Ìint‚¾‚¯B
191:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 20:15:54
ƒrƒbƒgƒtƒB[ƒ‹ƒh‚̈ÚA«‚Á‚ÄŽÀ‚̂Ƃ±‚ë‚Ç‚¤‚È‚ÌH
ˆê‰žA•W€‚¾‚æ‚ËH
192:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 20:16:15
bcc(c++)‚¾‚ÆŽg‚¦‚Ü‚·‚¯‚Ç
193:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 20:21:35
>>192
ˆ—ŒnˆË‘¶‚Å‘¼‚ÌŒ^‚ªŽg‚¦‚Ä‚à\‚í‚È‚¢‚±‚Ƃɂ͂ȂÁ‚Ä‚¢‚éB
194:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 20:22:42
C++‚È‚ç‚Ù‚Æ‚ñ‚ǂ̮”Œ^‚ªŽg‚¦‚邾‚ëB
195:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 20:31:15
>>189
unsigned char‚ªƒrƒbƒgƒtƒB[ƒ‹ƒh‚ÉŽg‚¦‚鈗Œn‚ÅA
“¯‚¶8ƒrƒbƒg‚̃rƒbƒgƒtƒB[ƒ‹ƒh‚Å‚àunsigned int‚É‚·‚é‚©unsigned char‚É‚·‚é‚©‚Å
ˆá‚¢‚ª¶‚¶‚é‚È‚ñ‚Ęb•·‚¢‚½‚±‚Æ‚ª‚È‚¢B
196:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 20:42:39
>>195
#include <iostream>
template<typename T> struct S { T a: 1; T b: 7; };
int main() {
std::cout << "sizeof(S<unsigned int>) = " << sizeof(S<unsigned int>) << std::endl;
std::cout << "sizeof(S<unsigned char>) = " << sizeof(S<unsigned char>) << std::endl;
}
g++‚¾‚ƈႤŒ‹‰Ê‚ɂȂÁ‚½‚ªB
197:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 20:42:42
>>195
ˆá‚¢‚Ü‚·‚¯‚ÇEEE
#include <stdio.h>
int main(void){
struct A{
unsigned int m : 1;
unsigned int n : 7;};
struct B{
unsigned char m : 1;
unsigned char n : 7;};
printf( "%u\n", sizeof(struct A) );
printf( "%u\n", sizeof(struct B) );
return 0;}
198:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 20:51:15
VC8‚ÅŠm”FB‚±‚¿‚ç‚àˆá‚Á‚½B
199:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 21:54:53
VC7.1‚Å‚àˆá‚Á‚½B
200:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 21:58:58
‚ӂ‚¤ˆá‚¤‚æ‚È
int ‚Æchar
ˆêƒoƒCƒg‚ÆŽlƒoƒCƒg‚¾‚ñ‚à‚ñ‚È
201:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 22:01:29
‚»‚Ì—‹ü‚Í‚¨‚©‚µ‚¢B
202:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 22:29:47
BCC55‚ÅŽŸ‚̃\[ƒX‚ðƒRƒ“ƒpƒCƒ‹‚·‚邯ƒŠƒ“ƒJ‚ªƒGƒ‰[‚ðo‚·‚̂ł·‚ªA
Ž„‚͉½‚ðŒë‚Á‚Ä‚¢‚é‚̂łµ‚傤‚©H
‚Ç‚¤’¼‚¹‚΂悢‚©‹³‚¦‚Ä‚¢‚½‚¾‚¯‚È‚¢‚Å‚µ‚傤‚©B
œƒ\[ƒX
#include<iostream>
class Singleton {
public:
@static Singleton getInstance() {
@@if(&singleton == '\0') {
@@@singleton = *(new Singleton());
@@@std::cout << "Created!" << std::endl;
@@} else {
@@@std::cout << "Not Created!" << std::endl;
@@}
@@return singleton;
@}
@~Singleton() {}
private:
@static Singleton singleton;
@Singleton() {}
};
int main() {
@Singleton s1 = Singleton::getInstance();
@Singleton s2 = Singleton::getInstance();
}
203:202
07/05/15 22:31:15
ƒGƒ‰[‚Ì“à—e‚ÍŽŸ‚Ì’Ê‚è‚Å‚·B
œƒRƒ}ƒ“ƒhƒ‰ƒCƒ“‚ƃGƒ‰[
X:\>bcc32 -nX:\data\bin -5 -f X:\data\src\Singleton.cpp
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
X:\data\src\Singleton.cpp:
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: ŠO•”ƒVƒ“ƒ{ƒ‹ 'Singleton::singleton' ‚ª–¢‰ðŒˆiX:\DATA\BIN\SINGLETON.OBJ ‚ªŽQÆj
204:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 22:33:49
ˆêŽžƒIƒuƒWƒFƒNƒg‚Æ‚µ‚ÄŽg‚¤‚È‚çƒRƒ“ƒXƒgƒ‰ƒNƒ^ŒÄ‚Ño‚³‚È‚¢‚ƑʖڂÛ
Singleton()::getInstance();
205:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 22:39:53
static•Ï”‚ÌŽÀ‘Ì‚ª‚È‚¢‚Á‚Ä“{‚Á‚Ä‚é‚킯‚È‚ñ‚¾‚ªc
‚»‚ñ‚È‚±‚Æ‚æ‚è‚àA‰½‚à‚©‚à‚ªŒë‚肾‚©‚ç
ƒ|ƒCƒ“ƒ^‚ÆŽQƂƃVƒ“ƒOƒ‹ƒgƒ“‚̕׋‚ð‚µ‚½‚Ù‚¤‚ª‚¢‚¢‚ÆŽv‚¤‚æB
206:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 22:41:02
>>202
ƒNƒ‰ƒX‚ÌÓIƒƒ“ƒo•Ï”‚ÍAŠO•”‚Å’è‹`‚µ‚È‚¯‚ê‚΂Ȃç‚È‚¢B
C‚̃Oƒ[ƒoƒ‹•Ï”‚ªƒwƒbƒ_‚Å錾‚µ‚ÄA‚Ç‚±‚©1ƒ–ЂŒè‹`‚·‚é‚̂Ɠ¯‚¶—‹üB
‚»‚ê‚Í‚Æ‚à‚©‚ƒ}ƒ‹ƒ`ƒXƒŒƒbƒh‚ðl—¶‚µ‚È‚¢‚̂ȂçA’P‚É‚±‚¤‚Å‚¢‚¢B
class Singleton {
public:
@static Singleton getInstance() {
@@return singleton;
@}
@~Singleton() {}
private:
@static Singleton singleton;
@Singleton() {}
};
static Singleton Singleton::singleton;
ƒ}ƒ‹ƒ`ƒXƒŒƒbƒh‚ðl—¶‚·‚é‚È‚çASingleton‚̓|ƒCƒ“ƒ^A
“–‘Rstd::auto_ptr‚âboost::scoped_ptr‚ ‚½‚è‚É‚·‚ׂ«B
207:202
07/05/15 23:07:21
>>204-206
—L“‚²‚´‚¢‚Ü‚·B
ƒ}ƒ‹ƒ`ƒXƒŒƒbƒh‚âboost‚̃‰ƒCƒuƒ‰ƒŠ‚Í“–•ªŽè‚ðo‚µ‚Ü‚¹‚ñB
ƒRƒ}ƒ“ƒhƒ‰ƒCƒ“ƒAƒvƒŠ‚ð‚ ‚é’ö“x–ž‘«‚Éì‚ê‚邿‚¤‚ɂȂÁ‚Ä‚©‚çæ‚És‚«‚Ü‚·B
‚Ü‚¾ƒ|ƒCƒ“ƒ^‚ÌŽg‚¢•û‚àK“¾‚Å‚«‚ĂȂ¢‚킯‚Å‚·‚µB
‚¸‚Á‚ÆJava‚ð‚â‚Á‚Ä‚«‚½‚ñ‚Å‚·‚ªAƒAƒŒ‚Í‘S•”ŽQƈµ‚¢‚¾‚©‚ç
ƒ|ƒCƒ“ƒ^‚ÆŽÀ‘Ì‚ðˆÓޝ‚·‚éƒV[ƒ“‚ÍŒÀ’肳‚ê‚Ä‚½‚ñ‚Å‚·‚ªA
C++‚Í‚»‚¤‚łȂ¢‚©‚ç“‚¢‚Å‚·B
C++ƒvƒƒOƒ‰ƒ}‚ÉJava‚ð‹³‚¦‚é–{‚Í‚ ‚é‚Ì‚ÉA‚»‚Ì‹t‚͂Ȃ¢‚ñ‚Å‚·‚æ‚ËB
ŽdŽ–‚ł͂Ȃ¢‚Ì‚ÅAŽè’T‚è‚łȂñ‚Æ‚©‚â‚Á‚Ä‚¢‚±‚¤‚ÆŽv‚¢‚Ü‚·B
208:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/15 23:12:41
Accelerated C++ƒ}ƒWƒIƒkƒkƒ
209:206
07/05/16 00:07:44
>>206
getInstance‚ªSingleton‚Ö‚ÌŽQÆ‚ð•Ô‚·‚悤‚É‚·‚é‚Ì‚ð–Y‚ê‚Ä‚¢‚½orz
³‚µ‚‚Í‚±‚¤
class Singleton {
public:
@ static Singleton& getInstance() {
@ @ return singleton;
@ }
private:
@ static Singleton singleton;
@ Singleton() {}
@ Singleton(const Singleton&);
@ ~Singleton() {}
@ Singleton& operator =(const Singleton&);
};
210:202
07/05/16 01:31:34
>>208
Amazon‚̃Œƒrƒ…[‚É‚æ‚邯A
Šù‚É‘¼Œ¾Œê‚Ì’mޝ‚ª‚ ‚élŠÔ‚ɂƂÁ‚Ä’š“x—Ç‚¢–{‚̂悤‚Å‚·‚ËB
“X“ª‚Å’T‚µ‚Ă݂܂·B
>>209
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B
operator‚ðŽg‚¤‚ñ‚Å‚·‚ËEEEB
‚Ü‚¾uƒpƒb‚ÆŒ©v‚ÅA‚È‚º‚±‚ꂪƒVƒ“ƒOƒ‹ƒgƒ“‚ðŽÀŒ»‚·‚é‚Ì‚©‚ª
•ª‚©‚ç‚È‚¢ƒŒƒxƒ‹‚Ȃ̂ÅAƒ\[ƒX‚ðŒ¤‹†‚µ‚Ă݂܂·B
211:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/16 01:44:03
Singleton(const Singleton&);
Singleton& operator =(const Singleton&);
‚̓Cƒ“ƒXƒ^ƒ“ƒX‚̃Rƒs[‚ð‹ÖŽ~‚·‚邽‚߂̂¿‚å‚Á‚Æ‚µ‚½H•v‚¾‚æB
private‚É‚·‚é&ˆ—‚Ì“à—e‚ð‹Lq‚µ‚È‚¢‚±‚Æ‚ÅA
ƒRƒs[‚µ‚悤‚Æ‚µ‚½‚çƒRƒ“ƒpƒCƒ‹ƒGƒ‰[‚É‚È‚é‚æ‚¤‚É‚µ‚Ä‚éB
‚ ‚ÆAƒRƒ“ƒXƒgƒ‰ƒNƒ^‚ðprivate‚É‚µ‚Ä‚é‚Ì‚àA
getInstance()ˆÈŠO‚ÅŸŽè‚ɃCƒ“ƒXƒ^ƒ“ƒX‚ðì‚ç‚ê‚È‚¢‚悤‚É‚·‚邽‚ßB
212:202
07/05/16 01:58:23
>>211
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B
‚È‚é‚Ù‚ÇAƒCƒ“ƒXƒ^ƒ“ƒX‚̃Rƒs[‹ÖŽ~‚àˆÓޝ‚µ‚È‚¢‚Æ‚¢‚¯‚È‚¢‚ñ‚Å‚·‚ËB
private‚ȃRƒ“ƒXƒgƒ‰ƒNƒ^‚ɂ‚¢‚Ä‚ÍAJava‚à“¯‚¶Žè–@‚Ȃ̂ł킩‚è‚Ü‚µ‚½B
213:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/16 06:57:01
C++‚œǂރfƒUƒCƒ“ƒpƒ^[ƒ“
URLØÝ¸(www.01-tec.com)
214:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/16 09:59:08
XP‚Å‚·B
ƒ^ƒXƒNƒgƒŒƒC‚̃AƒCƒRƒ“‚ðŽw’肵‚Ä‚àˆá‚¤ƒAƒCƒRƒ“iÔ‚¢~ƒ}[ƒNj‚ªo‚é‚ñ‚Å‚·‚¯‚lj½ŒÌ‚Å‚µ‚傤‚©H
ƒAƒCƒRƒ“‚Í32x32,256F‚Æ16x16,256F‚ª“ü‚Á‚Ă܂·B
215:214
07/05/16 10:36:34
ƒ\[ƒX
nid.hIcon = (HICON)LoadImage(hInstance,MAKEINTRESOURCE(IDI_ICON1), IMAGE_ICON, 16, 16, 0);
ƒŠƒ\[ƒX
IDI_ICON1 ICON "1.ico"
‚±‚ñ‚ÈŠ´‚¶‚œǂݞ‚ñ‚ł܂·B
‚»‚ê‚Æ‚ ‚Æ‚à‚¤ˆê‚‚¨Šè‚¢‚µ‚Ü‚·B
ƒ^ƒXƒNƒgƒŒƒC‚̃AƒCƒRƒ“‚ð‰EƒNƒŠƒbƒN‚µ‚½‚çTrackPopupMenu‚Æ‚¢‚¤•Ö—˜‚ȈʒuŽw’è‚Å‚«‚éŠÖ”‚ª‚ ‚è‚Ü‚·‚ªA
‰EƒNƒŠƒbƒNƒƒjƒ…[‚©‚çƒ_ƒCƒAƒƒO‚Ȃǂ̃EƒBƒ“ƒhƒE‚ðŠJ‚¢‚½ê‡‚̃EƒBƒ“ƒhƒEˆÊ’u‚ÌŽw’è‚͂ǂ¤‚â‚é‚Ì‚ªƒXƒ}[ƒg‚Å‚µ‚傤‚©H
ƒ^ƒXƒNƒo[‚ðˆÚ“®‚µ‚Ä‚éꇂɂàAƒAƒCƒRƒ“ˆÊ’u‚ÌŠp‚É•\ަ‚³‚¹‚½‚¢‚Å‚·B
‚»‚ꂼ‚ê‚̈ʒu‚Ìꇂ̈—‚ð‘‚•K—v‚ª‚ ‚é‚ñ‚Å‚µ‚傤‚©H
216:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/16 10:51:57
‚»‚̃AƒCƒRƒ“‚ðŽŽ‚µ‚ɃNƒ‰ƒCƒAƒ“ƒgƒGƒŠƒA‚É•`‚¢‚Ă݂ĂÍ
ˆÊ’uŽw’è‚ÍAAAŽv‚Á‚½‚Æ‚¨‚è‚É‚â‚Á‚Ă݂Ȃæ
217:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/16 13:59:23
struct base{};
template<typename T>struct drived:base{
template<typename TT>bool typecmp(){ return typeid(T)==typeid(TT); }
};
base *p1=new drived<int> , *p2=new drived<char>;
//‚ÅAbase*‚©‚çdrived::typecmp‚ɃAƒNƒZƒX‚µ‚½‚¢–󂾂ª
218:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
07/05/16 14:01:53
vip‚Ì•û‚ªl‚ª‚¢‚»‚¤‚Ȃ̂ÅB
½ÚØÝ¸(tech”Â:217”Ô)
217 –¼‘OFƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ[sage] “Še“úF2007/05/16(…) 13:59:23
@struct base{};
@
@template<typename T>struct drived:base{
@template<typename TT>bool typecmp(){ return typeid(T)==typeid(TT); }
@};
@
@base *p1=new drived<int> , *p2=new drived<char>;
@
@//‚ÅAbase*‚©‚çdrived::typecmp‚ɃAƒNƒZƒX‚µ‚½‚¢–󂾂ª
‚±‚ê‚ð‚â‚肽‚¢‚ñ‚¾‚¯‚ÇA‚â‚Á‚ς茴—“I‚É–³—‚¾‚æ‚ËH
ŽŸƒy[ƒWÅVƒŒƒX•\ަƒXƒŒƒbƒh‚ÌŒŸõ—ÞŽ—ƒXƒŒˆê——˜b‘è‚̃jƒ…[ƒX‚¨‚Ü‚©‚¹ƒŠƒXƒg¥ƒIƒvƒVƒ‡ƒ“‚ð•\ަ‰É‚‚Ԃµ2ch
4919“ú‘O‚ÉXV/189 KB
’S“–:undef