y‰SŽÒнŒ}zC/C++Ž ..
92:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 11:36:16
Vista‚ÉVC2003‚ðƒCƒ“ƒXƒg[ƒ‹‚µ‚½‚ñ‚Å‚·‚ªAƒ_ƒCƒAƒƒOƒfƒUƒCƒ“
•ÒWŽž‚ɃvƒƒpƒeƒBƒEƒBƒ“ƒh‚Ì’†g‚ªˆêØ•\ަ‚³‚ê‚Ü‚¹‚ñB
ƒTƒ|[ƒg‘ÎÛŠO‚Ȃ̂͂킩‚Á‚Ä‚¢‚Ü‚·‚ªA‰ðŒˆô‚ª‚ ‚ê‚Î
‹³‚¦‚Ä‚à‚炦‚È‚¢‚Å‚µ‚傤‚©
93:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 18:31:40
class abc
{
abc(int);
¥¥¥
}
---
list<abc> a1;
for (int i=0;i<10;i++){
a1.push_back( new abc(i));
}
‚±‚ñ‚ÈŠ´‚¶‚Åì‚Á‚½a1‚ð휂·‚鎞‚Á‚ÄA
a1‚Ì—v‘f‚Ìabc‚̃ƒ‚ƒŠ‰ð•ú‚ÍA
ƒ‹[ƒv‚³‚¹‚ÄA‚¢‚¿‚¢‚¿—v‘f‚²‚ƂɃƒ‚ƒŠ‰ð•ú‚ð‚µ‚Ä‚¢‚©‚È‚¢‚ƃ_ƒ‚Å‚·‚©H
‚»‚ê‚Æ‚àA
a1.clear();‚ÅA‘S•”‚â‚Á‚Ä‚‚ê‚郂ƒ“‚Ȃ̂ł·‚©H
94:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 19:10:06
Ž©•ª‚Å‚â‚ñ‚È‚¢‚Æ‚¾‚ß
95:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 20:44:35
>>92
D‚«‚Ȃ̂ð‘I‚×
1. WindowsXP‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚éB
2. VisualStudio2008ExpressEdition‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚éB
96:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 22:13:41
‚ ‚éƒNƒ‰ƒXA‚ª‚ ‚è‚Ü‚·B
‚±‚̃Nƒ‰ƒX‚ðƒNƒ‰ƒXB‚ªƒRƒ“ƒ|ƒWƒVƒ‡ƒ“‚µ‚Ü‚·B
ƒNƒ‰ƒXA‚Ìprotectedƒƒ“ƒo[•Ï”‚ɃNƒ‰ƒXB‚©‚çƒAƒNƒZƒX‚µ‚½‚¢‚̂ł·‚ªAŒp³‚µ‚½ê‡‚ƈá‚Á‚ăAƒNƒZƒX‚Å‚«‚Ü‚¹‚ñB
‚ǂ̂悤‚ɃAƒNƒZƒX‚·‚ׂ«‚Å‚µ‚傤‚©H
A“à‚Épublic‚ÈŠÖ”‚ð‚‚‚èA‚»‚ÌŠÖ”‚ªprotectedƒƒ“ƒo[‚Ì’l‚ð•Ô‚·‚悤‚É‚·‚ê‚΂¢‚¢‚̂łµ‚傤‚©H
97:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 22:29:59
‚¨D‚«‚ɂǂ¤‚¼B
98:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 22:46:37
‚Ç‚¤‚·‚é‚Ì‚ªˆê”Ê“I‚È‚ñ‚Å‚µ‚傤‚©H
ƒAƒNƒZƒX‚µ‚½‚¢•Ï”‚Í2ŒÂ‚ ‚Á‚ÄA‚»‚Ì‚½‚߂Ɋ֔‚ð2ŒÂ—pˆÓ‚·‚é‚̂̓oƒJ‚炵‚¢Š´‚¶‚ª‚µ‚Ü‚·B
99:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 22:49:21
friend
100:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 22:55:41
>>98
“ñŒÂ—pˆÓ‚·‚é‚Ì‚ª”nŽ‚ç‚µ‚¢‚È‚çÝŒv‚ðŒ©’¼‚µ‚Ü‚µ‚傤B
101:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 23:21:25
ƒAƒNƒZƒX§Œä¸¸‚ðS‚ª‚¯‚Ă邿‚ÆŒ©‚¹‚é‚Ì‚ªŽå–Ú“I‚È‚ç
’Šo—pˆêŽžƒIƒuƒWƒFƒNƒg‚ƃƒ“ƒoŠÖ”‚Ö‚ÌfriendŽw’è‚ð‹ìŽg‚µ‚Ä‹Lq‚·‚ê
102:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 23:34:18
>>96
‹¤’ʂ̃ƒ“ƒo[‚𔲂«o‚µ‚½ƒNƒ‰ƒX‚ðƒNƒ‰ƒXA,B‚©‚çŽQÆ‚·‚ê‚΂¢‚¢B
103:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 23:42:07
„98
‚±‚̃XƒŒƒbƒh‚É‘‚«ž‚Þ˜J—Í‚ð
ƒAƒNƒZƒbƒT‚ÌŽÀ‘•‚ÉŽg‚Á‚Ä‚‚¾‚³‚¢
104:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 23:49:32
>>98
getter setter‚͎׈«
105:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/18 00:01:52
>>93
‚»‚êA
@@a1.push_back(abc(i));
‚ł悂Ȃ¢H
‚Ç‚¤‚µ‚Ä‚ànew‚µ‚È‚«‚á‚È‚ç‚È‚¢‚È‚çAshared_ptr‚ðŽg‚¤‚Æ‚¢‚¢B
106:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/18 23:50:38
>>96
B‚É•ïŠÜ‚³‚ê‚邱‚Æ‚ð‘O’ñ‚ÉA‚ðÝŒv‚µ‚Ä‚¢‚é‚È‚ç’P‚ÉfriendŽw’è‚·‚ê‚΂¢‚¢B
‚»‚¤‚łȂ¯‚ê‚΃AƒNƒZƒT‚ð‘‚‚©Aƒƒ“ƒo•Ï”Ž©‘Ì‚ðpublic‚É‚·‚ê‚΂¢‚¢B
107:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 08:50:01
>>105
—p“r‚É‚æ‚Á‚Ä‚Í shared_ptr ‚ðƒRƒ“ƒeƒi‚ɓ˂Áž‚Þ‚æ‚è ptr_vector ‚Ì•û‚ª‚¢‚¢‚©‚à‚ËB
108:92
10/03/19 13:29:45
‚â‚͂肻‚¤‚È‚è‚Ü‚·‚©[B
ƒlƒbƒg‚Å’²‚×‚Ä‚à‚»‚¤‚¢‚¤Œ»Û‚ªŒ©‚‚©‚ç‚È‚¢‚µA
Ž©•ª‚̊‹«ŒÅ—L‚Ì–â‘è‚Ȃ̂©‚È‚Ÿ
‚¿‚Ȃ݂Éŋ߂łÍMFC‚ªŽg‚í‚ê‚Ä–³‚¢‚Ý‚½‚¢‚È‚±‚Æ•·‚«‚Ü‚·‚ª
‚»‚¤‚È‚é‚ÆƒEƒBƒ“ƒhŽü‚è‚͉½‚Åì‚é‚Ì‚ªŽå—¬‚È‚ñ‚Å‚µ‚傤H
SDKH CLIH
109:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 16:45:15
operator bool‚ð‚»‚Ì‚Ü‚ÜŽÀ‘•‚·‚邯FX‚Æ‚æ‚낵‚‚È‚¢‚悤‚Åsafebool‚È‚éƒeƒNƒjƒbƒN‚ª‚ ‚邿‚¤‚Å‚·‚ª
ƒOƒO‚Á‚Ä‚à‰½‚ð‚â‚Á‚Ä‚é‚Ì‚©‚³‚Á‚Ï‚è‚í‚©‚è‚Ü‚¹‚ñ
‚Ç‚¤‚¢‚¤Œ´—‚Åsafe‚ɂȂé‚̂łµ‚傤‚©H
110:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 17:09:07
Linux‚Ågcc‚ðŽg‚Á‚Ä‚¢‚Ü‚·B
ƒvƒƒOƒ‰ƒ€Ž©g‚ªŽg—p‚µ‚Ä‚¢‚郃‚ƒŠ—Ê‚ÆAƒVƒXƒeƒ€‚̃tƒŠ[ƒƒ‚ƒŠ—Ê‚ðŽæ“¾‚·‚é•û–@‚ð‹³‚¦‚Ä‚‚¾‚³‚¢
111:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 17:33:51
>>110
OS”ÂAOSƒXƒŒ‚łǂ¤‚¼B
112:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 19:40:36
>>109
more c++ ƒCƒfƒBƒIƒ€@safe bool ‚ŃOƒO‚é‚ñ‚¾B
•’ʂɂ̓AƒNƒZƒX‚Å‚«‚È‚¢ƒ|ƒCƒ“ƒ^Œ^‚ð•ÏŠ·‰‰ŽZŽq‚ŕԂ¹‚ÎAif‚Å•]‰¿‚Å‚«‚邵A‚ ‚ꂱ‚êˆÃ–قȕϊ·‚ª‚³‚ê‚È‚‚ÄÏ‚ÞB
113:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 19:42:30
int a=p+1;‚±‚ñ‚Ȃ̂ªsafe‚¶‚á‚È‚¢ˆÓ}‚³‚ê‚È‚¢Žg‚¢•û
114:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 19:48:46
C++0x‚Ìexplicit conversion operators‚ª‚ ‚ê‚Îsafe bool idiom‚Í‚¢‚ç‚È‚¢Žq‚Å‚·‚©H
115:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 19:56:24
‚»‚¤‚¾‚ËB
‚Å‚àAƒRƒ“ƒpƒCƒ‰‚ÌŽÀ‘•‚ð‘҂‚±‚ƂȂH•v‚µ‚Äsafe bool‚ðŽè‚É“ü‚ê‚ç‚ê‚éŠg’£«‚ªC++‚Ì‚¢‚¢‚Æ‚±‚낾‚æ‚ËB
116:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 20:55:43
C++‚̃R[ƒh‚ðDLL‚É‚·‚é‚Ì‚Á‚Ă߂ñ‚Ç‚¢‚È
—áŠOo‚µ‚¿‚á‚¢‚¯‚È‚¢‚©‚ç‚í‚´‚í‚´—áŠO‘¨‚¦‚邾‚¯‚̃‰ƒbƒp[‘‚©‚È‚¢‚Æ‚¢‚¯‚È‚¢‚µ
ˆø”‚ƕԂè’l‚ÉSTLŽg‚¦‚È‚¢‚µ
117:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 22:58:13
‚»‚ê‚ð“Ë‚«‹l‚߂Ă¢‚‚Æ‚ÈA‚¢‚‚̂܂ɂ©—ò‰»COM‚ðì‚Á‚Ä‚¢‚鎖‚É‹C‚‚̂³
118:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 23:02:59
>>116
‘½•ªAŒ‹‹ÇƒCƒ“ƒ^ƒtƒF[ƒXƒR[ƒh‚ÍC‚©COM‚É‚·‚邱‚Æ‚É‚È‚é‚ÆŽv‚¤‚æ
˜J—͂΂©‚è–³‘ʂɂ©‚©‚éã‚ÉAC‚ÌDLL‚âCOM‚æ‚葊ŒÝ‰^—p«‚É‚¨‚¢‚Ä—ò‚é
119:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 23:06:13
Windows‚È‚çCOM‚Å‚¢‚¢‚¯‚Ç
Mac‚âLinux‚͂ǂ¤‚·‚ñ‚ÌH
120:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 23:07:22
>>112-115
‚®‚®‚Á‚Ă݂ñ‚̃y[ƒW‚ðŒ©‚½‚̂ł·‚ª
URLØÝ¸(ja.wikibooks.org)(Safe_bool)
operator bool()‚ł͂Ȃoperator bool_type() const‚Å‚à‚æ‚¢‚̂łµ‚傤‚©H
‚ÅAoperator bool_type() const‚Ì‹““®‚Í
ok_‚ªtrue‚Å‚ ‚ê‚Îthis_type_does_not_support_comparisons()‚̃AƒhƒŒƒX‚ð•Ô‚µA0ˆÈŠO‚Ì’l‚Ȃ̂Åtrue‚Æ“®ì‚·‚é
false‚È‚ç‚Î0‚ð‚©‚¦‚µfalse‚ƂȂé
—á•¶‚Ì
if (t2 == t1)‚â
if (t1 < 0)
‚̂΂ ‚¢‚ÍprivateŠÖ”‚̃AƒhƒŒƒX‚ð”äŠr‚·‚é‚̂ŃRƒ“ƒpƒCƒ‹ƒGƒ‰[‚ð‚Í‚
‚Æ‚¢‚¤‚±‚Ƃłµ‚傤‚©
‚±‚ÌꇂȂºƒƒ“ƒoŠÖ”‚̃AƒhƒŒƒX‚ð•Ô‚è’l‚Æ‚·‚é‚̂łµ‚傤‚©H
Ž¿–⑱‚«‚Å\‚µ–ó‚ ‚è‚Ü‚¹‚ñ‚ª‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·
121:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 23:10:44
C‚Å‚¢‚¢‚ñ‚¶‚á‚È‚¢‚Ì
•K—v‚ɉž‚¶‚ăwƒbƒ_‚Ì‚ÝA‚Ü‚½‚̓Xƒ^ƒeƒBƒbƒNƒŠƒ“ƒN‚̃‰ƒbƒp[‚ð‘‚¢‚Ä’ñ‹Ÿ
‚‚܂è
ƒ†[ƒU[ƒR[ƒh - C++ƒ‰ƒbƒp[ - DLL‹«ŠE - CƒCƒ“ƒ^ƒtƒF[ƒX - C++ŽÀ‘•
‚±‚¤‚È‚é
–Ê“|‚·‚¬‚Ä”½“f‚ªo‚é‚Ë
122:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 23:14:39
CORBA(Î)
123:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 23:18:10
>>120
•’ʂ̃|ƒCƒ“ƒ^‚¾‚Á‚½‚ç‚¢‚ë‚¢‚ë‚Å‚«‚Ä•›ì—p‚ª‚ ‚é‚©‚çB
124:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/19 23:40:28
>>120
ƒLƒƒƒXƒg‚Å‚¢‚¶‚Á‚Ä‚Ý‚é‚Æ‚í‚©‚邯‚Çpointer to member‚̓LƒƒƒXƒg‚̧ŒÀ‚ª‚«‚‚¢
‚¾‚©‚ç‚©‚Á‚ĂɈÖٕϊ·‚³‚ê‚ăRƒ“ƒpƒCƒ‹‚Æ‚¨‚Á‚ĕςȓ®ì‚µ‚½‚è‚Æ‚©‚ª‚È‚‚È‚Á‚ĈÀ‘S‚Ȃ킯
125:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/20 13:56:08
Ž¿–â‚Å‚·B
‘¬“x‚Ål‚¦‚邯Afloat‚Ædouble‚ł͂ǂ¿‚ç‚ðŽg‚Á‚½•û‚ª‚¢‚¢‚̂łµ‚傤‚©B
ŋ߂ÌPC‚Å“®‚©‚·ê‡‚ðl‚¦‚Ä‚¢‚é‚̂ł·‚ªAŋ߂Ífloat‚æ‚èdouble‚Ì•û‚ª‘‚¢A‚Ý‚½‚¢‚Șb‚ð•·‚¢‚½‚̂ł·‚ªEEEB
126:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/20 14:09:45
32bitCPU‚È‚çfloat‚àdouble‚à‚»‚ñ‚Ȃɷ‚ª‚È‚¢‚¾‚ë
x86‚ÉŒÀ’肵‚ÄŒ¾‚¤‚È‚ç‚Ç‚¿‚ç‚àFPU‚Ƀ[ƒh‚µ‚½Žž“_‚Å80bit‚ɂȂé
SSEŽg‚Á‚Ä‚½‚çfloat‚Ì•û‚ª‘¬‚¢‚Á‚ÄŽ–‚à‚ ‚邯‚Ç‚È
127:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/20 14:15:09
>>126
64bit‚¾‚Æ·‚ªo‚邯Œ¾‚¤‚±‚Ƃłµ‚傤‚©H
‚»‚µ‚Ä32bit‚È‚çA¸“x‚ª‚‚¢•ªdouble‚̂ق¤‚ª‚æ‚¢A‚Æ‚¢‚¤Ž–‚Ň‚Á‚Ä‚¢‚Ü‚·‚©H
128:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/20 14:22:25
>>127
‚ ‚ ‚²‚ß‚ñ
¡’‹ŠÔ‚©‚çŽðˆù‚ñ‚ł邩‚瓚‚¦”¼•ª‚É•·‚¢‚Ä‚‚ê
32bitCPU‚¾‚Ædouble‚̃[ƒh‚Ƀƒ‚ƒŠƒAƒNƒZƒX2‰ñ•K—v‚¾‚í‚È
64bitCPU‚¾‚Æ‚»‚ñ‚Ȃɷ‚ª‚È‚¢‚Á‚Ă̂ª³‰ð‚©
‚Å‚àŽÀ‘ª‚µ‚Ä‚Ý‚é‚Æ•ª‚©‚邯‚Çfloat‚Å‚àdouble‚Å‚à‚»‚ñ‚Ȃɷ‚ª‚È‚¢‚æ
Œ‹‹ÇFPU‚̉‰ŽZ‚ÉŠ|‚©‚鎞ŠÔ‚ªH‚í‚ê‚ă[ƒh‚ÌŽžŠÔ‚È‚ñ‚Ä–â‘è‚É
‚È‚ç‚È‚¢‚ñ‚¾‚낤‚È
129:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/20 17:12:20
>>125
‚ ‚È‚½‚ª‹†‹É‚Ì«”\‚ð–ÚŽw‚µ‚Ä‚¢‚é‚̂łà‚È‚¢ŒÀ‚èAdouble‚ðŽg‚¤‚ׂ«‚Å‚·B
——R‚ÍŠô‚‚©‚ ‚è‚Ü‚·B悸‚̓ƒŠƒbƒg‚ðB
Efloat‚Ì•û‚ª‰‰ŽZˆ—‚ª‘¬‚¢ê‡‚à‚ ‚éB“Á‚ÉAƒxƒNƒ^‰»‚Å‚«‚éꇂÉ2”{‘¬‚‚Ȃ邩‚à‚µ‚ê‚È‚¢B
Efloat‚̑傫‚È”z—ñ‚Ì•û‚ª“¯‚¶—v‘f”‚Ìdouble‚Ì”z—ñ‚æ‚è‚àƒLƒƒƒbƒVƒ…ƒqƒbƒg‚ªŠú‘Ò‚Å‚«‚éB‚»‚à‚»‚àƒƒ‚ƒŠ—e—Ê“I‚Édouble‚ł̓_ƒ‚©‚à‚µ‚ê‚È‚¢B
EŽOŠpŠÖ”‚Ȃǂ̕W€ŠÖ”‚Ísin()‚Æsinf()‚̂悤‚Éfloat”Å‚ª—pˆÓ‚³‚ê‚Ä‚¢‚ê‚΂»‚ê‚ð—˜—p‚Å‚«‚éB
ŽŸ‚ɃfƒƒŠƒbƒg‚ðB
Eˆê•”‚Ì•W€ŠÖ”‚É‚Ífloat”Å‚ª—pˆÓ‚³‚ê‚Ä‚¢‚È‚¢B‚Ü‚½Asprintf()‚̂悤‚Éfloat‚ð“n‚·‚±‚Æ‚ª‚Å‚«‚È‚¢ê‡‚à‚ ‚éB
Efloat‚Ædouble‚̕ϊ·‚͈ê”Ê“I‚É‚©‚È‚è’x‚¢B
E1.5‚̂悤‚É‘‚¢‚Ä‚µ‚Ü‚¤‚Æ‚»‚̒蔂Ídouble‚ɂȂÁ‚Ä‚µ‚Ü‚¤‚Ì‚ÅA1.5f‚̂悤‚Éfloat’蔂ł ‚邱‚Ƃ𖾎¦‚·‚é•K—v‚ª‚ ‚éB
EˆÈã‚̂悤‚ÉAˆÃ–Ù‚Ìdouble‚Ö‚ÌŠiã‚°‚ð‹ÖŽ~‚·‚é‚ɂ̓AƒZƒ“ƒuƒŠo—Í‚ðŠm”F‚·‚邿‚¤‚È_ŒoŽ¿‚Ȏ葱‚«‚ª•K—v‚ɂȂéB
E‚»‚à‚»‚àŽÀ”‰‰ŽZˆÈŠO‚̃RƒXƒg‚ª‚‚‚Äfloat‚̃ƒŠƒbƒg‚ª–w‚ǂȂ¢‚©‚à‚µ‚ê‚È‚¢B
®Adouble‚Ì•û‚ª‘¬‚¢‚Ì‚ÍC‚Å‚Í20”N—ˆ‚̘bBuŋ߂Ídouble‚Ì•û‚ª‘¬‚¢v‚È‚ñ‚Ä‚±‚Ƃ͂Ȃ¢‚̂ł»‚̘b‚ð‚µ‚½l‚͉½‚©Š¨ˆá‚¢‚ð‚µ‚Ä‚¢‚éB
130:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/20 17:15:13
‚¨‘O‚Í‚µ‚Å‚à‘¬‚¢‚©‚ç‚ÆŒ¾‚Á‚Äshort‚𑽗p‚·‚é‹C‚ɂȂ邩?
—]’ö‚Ì‚±‚Æ‚ª‚È‚¢ŒÀ‚è[‚l‚¦‚¸‚Éint‚ðŽg‚¤‚¾‚ë?
float‚Ædouble‚ÌŠÖŒW‚Íshort‚Æint‚ÌŠÖŒW‚ƈꂾB
[‚l‚¦‚½‚‚È‚©‚Á‚½‚ç–Ù‚Á‚Ädouble‚ðŽg‚Á‚Æ‚¯B
ŠÈ’P‚É“Z‚߂邯‚±‚ê‚Å‚¢‚¢‚¾‚ëw
131:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/20 17:18:59
>>129
ƒƒŠƒbƒg‚ƃfƒƒŠƒbƒg‚Ìà–¾‚ª‹t‚̂悤‚È‹C‚ª‚·‚écB
132:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/20 17:22:36
>>131
‚¢‚âA2s–ڂɋ󔒂ª‚ ‚邾‚ëH‚»‚±‚ÌsŠÔ‚ð“Ç‚ñ‚Å‚Ý‚é‚ÆA
”Þ‚Ífloat‚É‚µ‚½ê‡‚Ìà–¾‚ð‚µ‚Ä‚¢‚é‚ñ‚¾‚낤B
133:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/20 17:28:24
>>125
‚Æ‚è‚ ‚¦‚¸Ž©•ª‚̃}ƒVƒ“‚ÅŽÀ‘ª‚µ‚Ă݂ê‚ÎH
134:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/20 17:29:16
>>133
‚»‚µ‚Ä/fp:fast‚ð•t‚¯‚¸‚Éfloat‚ª’x‚¢‚ÆŒ¾‚¢o‚·‚킯‚¾
135:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/20 17:32:47
>>132
‚»A‚»‚ñ‚ȂƂ±‚ë‚ɋ󔒂ªcIII
136:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/20 18:26:02
GPU‚ÉŽdŽ–‚Ô‚ñ“Š‚°‚Ä”ñ“¯Šú‚É‚â‚点‚ê‚΂¢‚¢‚¶‚á‚È‚¢
137:129
10/03/20 19:51:23
‚¨‚Á‚ÆA“r’†‚Å\¬‚ð•Ï‚¦‚½‚Ì‚ª— –Ú‚Éo‚½‚悤‚ÅBޏŒhB
>>136
³’¼A¡‚Ì4coreCPU‚È‚çGPU‚ɂԂñ“Š‚°‚ç‚ê‚邿‚¤‚ÈŽdŽ–‚Í‚©‚È‚è“ÁŽê‚ÆŒ¾‚í‚´‚é‚𓾂܂¹‚ñB
ŽÀ‘•‚ÌŽèŠÔ‚ðl‚¦‚邯AIntelCompiler‚ÅÅ“K‰»‚·‚é•ӂ肪–³“ï‚Å‚·‚ËB
‚¢‚¸‚ê‚É‚µ‚Ä‚àA•’ʂ̃vƒƒOƒ‰ƒ}‚ªˆÓޝ‚·‚邿‚¤‚ȗ̈æ‚ł͕’Ê‚Édouble‚ðŽg‚Á‚Ägcc‚È‚èVC‚È‚è‚Å
ƒRƒ“ƒpƒCƒ‹‚·‚邾‚¯‚Å[•ª‚Å‚·B
138:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 05:29:48
typedef struct tHOGE
{
int x ;
TCHAR[256] str;
}HOGE;
std:vector<HOGE> vHoge ;
Œ©‚½‚¢‚ÈŠ´‚¶‚Ì‚à‚Ì‚ðstd:sort‚ðŽg‚Á‚Äx–”‚Ístr‚Å
•À‚Ñ‚©‚¦‚鎖‚Ío—ˆ‚Ü‚·‚©H
139:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 05:34:13
>>138
‚·‚݂܂¹‚ñ
TCHAR str[256] ;‚Å‚·„ƒ
140:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 06:51:01
>>138
”äŠrŠÖ”‚ðŽ©•ª‚Å‘‚¯‚΃\[ƒg‚Å‚«‚é
141:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 09:42:10
>>138
ŠÈ’P
std::sort‚Ì‘æŽOˆø”‚É–qŠÖ”‚Ì–¼‘O‚ð‘‚‚©AŠÖ”ƒIƒuƒWƒFƒNƒg‚Ì
–¼‘O‚ð‘‚¢‚ÄA–qŠÖ”‚Ü‚½‚ÍŠÖ”ƒIƒuƒWƒFƒNƒg‚𑂯‚΃\[ƒg‰Â”\
142:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 10:01:12
>>138
URLØÝ¸(ideone.com)
‚±‚ñ‚ÈŠ´‚¶‚È
143:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 10:51:46
>>140-142
o—ˆ‚Ü‚µ‚½‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·
ƒ\[ƒX‚í‚©‚è‚â‚·‚©‚Á‚½‚Å‚·
144:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 10:58:23
deprecated conversion from string constant to echar*f
‚̈Ӗ¡‚ð‚®‚®‚Á‚Ă݂½‚ªAC++0x‚Å”pŽ~—\’è‚Æ‚ÌŽ–‚Ȃ̂Å
Œ»s•W€C++‚ł͊֌W‚È‚¢
145:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 12:26:39
>>144
‚Æ‚¢‚¤‚©
C++0x‚Å”pŽ~—\’è
‚¾‚©‚ç
deprecated conversion
‚È‚ñ‚¶‚á‚Ë‚¥‚ÌH
146:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 12:28:17
i=߃Öß)H
147:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 12:32:22
>>146
‚¢‚₾‚©‚ç”pŽ~—\’肾‚©‚ç@deprecated‚È‚ñ‚¶‚á‚ËH‚Æ
148:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 12:46:23
C++0x‚Å”pŽ~‚³‚ê‚é‚©‚Ç‚¤‚©‚ÍŠÖŒW‚È‚
Œ»s‚ÌC++03‚Ådeprecated‚¾‚©‚ç‘f’¼‚Éconst•t‚¯‚ë
149:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 13:59:07
C++‚Åatoll‚Á‚Û‚¢‚±‚Æi•¶Žš—ñ¨long long intj‚ª‚â‚肽‚¢‚ñ‚¾‚¯‚ǂǂ¤‚â‚ê‚΂¢‚¢‚ÌH
150:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 14:00:55
lexical_cast‚Æ‚©stringstream‚Æ‚©
151:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 14:11:20
atollŽg‚¦‚΂¢‚¢‚¶‚á‚ñ
152:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 14:28:31
class Hoge {...}; ‚ª‚ ‚邯‚µ‚Ä
Hoge hoge; ‚ð‹ÖŽ~‚µ‚Ä
void func(Hoge hoge); func(Hoge(...)); ‚ð‹–‰Â‚µ‚½‚¢
‚‚܂èƒeƒ“ƒ|ƒ‰ƒŠ‚ȃIƒuƒWƒFƒNƒg‚Æ‚µ‚Äfunc‚̈ø”‚É“n‚·Žž‚̂ݶ¬‚ð‹–‰Â‚µ‚½‚¢
‚±‚¤‚¢‚¤‚±‚Ƃ͉”\‚Å‚µ‚傤‚©H
153:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 14:31:02
>>152
Hoge ‚̃Rƒ“ƒXƒgƒ‰ƒNƒ^‚ð private ‚É‚µ‚Ä func ‚ð friend ‚É‚µ‚ÄA
Hoge ‚Í func ‚Ì’†‚Ŷ¬‚·‚éB
154:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 14:55:28
operator void*‚Æoperator bool‚ª“¯ˆê‚Ì“®ì‚ð‚·‚é‚Æ‚¢‚¤‚Ì‚ª‚æ‚”»‚ç‚È‚¢
‚±‚ê‚͂ǂ¤‚¢‚¤‚±‚Ƃłµ‚傤‚©
155:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 15:00:34
>>154
if ‚âðŒ‰‰ŽZŽq‚ÌðŒŽ®‚Æ‚µ‚ÄŽg‚¤•ª‚ɂ͓¯‚¶Œ‹‰Ê‚ª“¾‚ç‚ê‚éA‚Æ‚¢‚¤‚±‚ÆB
void* ‚È‚çˆÓ}‚µ‚È‚¢ˆÃ–Ù•ÏŠ·‚É‚æ‚éŠÔˆá‚¢‚ð‚¢‚‚ç‚©–h‚°‚éB‚µ‚©‚µŠ®‘S‚ł͂Ȃ¢B
156:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 15:06:07
ƒŒƒŠ[ƒY‚—‚—‚—‚—‚—‚Á‚Ä‚©‚—‚—‚—‚¤‚Ù‚Á
157:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/21 15:06:16
Œë”š
158:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/22 16:50:36
ŠÈ’P‚È“ñŽŸŒ³ƒe[ƒuƒ‹ƒNƒ‰ƒX‚ðì‚Á‚Ă݂悤‚ÆŽv‚Á‚Ä‚â‚Á‚Ă݂½‚ñ‚Å‚·‚ª
width*height‚̑傫‚³‚Ì”z—ñ‚ðˆê‰ñ‚ÅŠm•Û‚µ‚ÄAdata[width*y+x]‚ŃAƒNƒZƒX‚Æ‚¢‚¤‚â‚è•û‚ªˆê”Ê“I‚Å—Ç‚¢‚Æ•·‚¢‚½‚ñ‚Å‚·‚ª
width*height‚ª‘å‚«‚‚È‚é‚Æƒƒ‚ƒŠ‚ðŠm•Ûo—ˆ‚È‚‚È‚Á‚Ä‚µ‚Ü‚¢‚Ü‚¹‚ñ‚©H
WORDÅ‘å*WORDő傮‚ç‚¢‚܂łµ‚©Šm•Û‚µ‚Ä‚‚ê‚Ü‚¹‚ñ
‚±‚ñ‚È’†“r”¼’[‚È‚â‚è•û‚ª‚Ù‚ñ‚ƂɈê”Ê“I‚ÉŒ©‚Ä—Ç‚¢‚à‚̂Ȃñ‚Å‚µ‚傤‚©H
159:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/22 16:53:58
>>158
–³’ƒ‚È’Þ‚è‚ÍŒ‹\‚Å‚·B
160:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/22 17:05:49
>>158
ƒƒ‚ƒŠ‚ª‰½ƒƒKƒoƒCƒg•K—v‚©ŒvŽZ‚µ‚Ă݂悤B
161:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/23 00:34:26
URLØÝ¸(codepad.org)
‚±‚¤‚¢‚¤‚Ì‚Á‚Ä‚ ‚è‚Å‚·‚©H
‚‚¤‚©‚à‚Á‚ÆŠÈ’P‚ɃNƒ‰ƒCƒAƒ“ƒg‚Ɉø”‚Ì•À‚בւ¦‚ð’ñ‹Ÿ‚·‚éƒeƒN‚Á‚Ä‚ ‚è‚Ü‚·‚©H
162:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/23 02:15:39
>>158
> width*height‚ª‘å‚«‚‚È‚é‚Æƒƒ‚ƒŠ‚ðŠm•Ûo—ˆ‚È‚‚È‚Á‚Ä‚µ‚Ü‚¢‚Ü‚¹‚ñ‚©H
“–‘R‚È‚é‚Å‚µ‚傤
data[width*y+x] ‚ÌŒ‹‰Ê‚É–@‘¥«‚Í–³‚¢‚Ì‚©A‘S‚‚̃oƒ‰ƒoƒ‰‚È‚ç‚ÎŽd•û‚È‚¢‚¯‚ÇA
‚½‚Æ‚¦‚ÎA100,500 ‚ÌŒ‹‰Ê‚©‚ç 500,100 ‚ÌŒ‹‰Ê‚Í’ÊíŒvŽZ‚æ‚èŠÈ’P‚É“±‚«o‚¹‚È‚¢‚©B
‚Ü‚½‚ÍA‚ ‚é—v‘f”Ô†‚ÌŒ‹‰Ê‚Ì•„†‚𔽓]‚·‚ê‚Α¼‚Ì—v‘f‚ÌŒ‹‰Ê‚ɂȂç‚È‚¢‚©B
‚»‚ñ‚Ȃӂ¤‚É‚µ‚Ä”z—ñ”‚Í”¼•ª‚ÉŒ¸‚点‚È‚¢‚©FXl‚¦‚éB
‘½‘˦‚µ‚ăe[ƒuƒ‹‚ð³‹K‰»‚µ‚Ä‚¢‚‚µ‚©‚È‚¢B
163:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/23 08:38:33
>>161
Boost Parameter
164:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/23 12:33:53
ƒ}ƒNƒ‚ÍŽg‚¢‚½‚‚È‚¢‚Å‚·
165:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/23 14:13:37
ƒ}ƒNƒŽg‚¢‚½‚‚È‚¢H‚È‚çCŽg‚¤‚È
166:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/23 14:29:24
‚±‚ñ‚È‚ñ‚Ç‚¤‚æ
template <typename LHS,typename RHS,typename RET> RET argswap2(RET (*p)(LHS,RHS),LHS a,RHS b){return p(b,a);}
int sub(int a,int b){return a-b;}
cout << sub(10,2) << endl;
cout << argswap2(sub,10,2) << endl;
167:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/23 22:52:07
>>161
•À‚בւ¦‚ð‹–‰Â‚·‚éˆø”‚ÌŒ^‚ª‘S•”ˆá‚¦‚΂ł«‚È‚¢‚±‚Æ‚à‚È‚¢
URLØÝ¸(codepad.org)
ˆø”‚ª‘½‚¢‚Æ‚«‚Í‘å•Ï‚¾‚ªTypeListŽg‚¤‚©enable_if‚ð‹ìŽg‚·‚ê‚΂ǂ¤‚É‚©‚È‚éB
168:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/23 23:24:45
‚»‚̈ø”‚Ì•À‚בւ¦‚Á‚ĈӖ¡‚ ‚é‚ÌH
169:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/24 23:16:15
‘g‚Ýž‚ÝŒ^‚̃fƒXƒgƒ‰ƒNƒ^‚𖾎¦“I‚ɌĂÑo‚·‚±‚ƂɂȂÁ‚Ä‚à–â‘è‚È‚¢‚̂łµ‚傤‚©H
170:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/24 23:30:51
–â‘è–³‚¢‚Í‚¸B
STL‚̃Rƒ“ƒeƒi‚Ì“à•”‚Å•’Ê‚És‚í‚ê‚Ä‚éB
171:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/24 23:31:14
>>169
‚Ç‚¤‚¢‚¤ƒ\[ƒXƒR[ƒh‚ð‘g‚߂΂»‚¤‚È‚é‚Á‚Ä‚±‚ÆH
172:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/24 23:32:57
>>169
placement new‚ɑΉž‚·‚éƒfƒXƒgƒ‰ƒNƒ^ŒÄ‚Ño‚µ‚È‚ç•K—v‚¾‚¯‚ÇH
‚»‚êˆÈŠOH
173:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/24 23:44:31
>>167
‚Ç‚¤‚à‚Å‚·
–Ê”’‚¢‚Å‚·‚Ë
template‚¾‚¯‚Ŕėp‰»‚Å‚«‚é‚Ȃ炻‚ê‚ɉz‚µ‚½‚±‚Ƃ͂Ȃ¢‚ñ‚Å‚·‚ªŠ®‘S‚ɂ͓‚¢‚Å‚·‚Ë
>>168
from‚Æto‚Ç‚Á‚¿‚ªæ‚¾‚Á‚¯EEE‚Æ‚¢‚¤‚Æ‚«‚É–¾Ž¦‚Å‚«‚邯•‚©‚Á‚½‚èi‚±‚̗Ⴞ‚¯‚¾‚Æ”÷–‚¾‚¯‚Ç”‚ª‘‚¦‚邯Œ‹\•Ö—˜j
‚ ‚Ƃ͕¡”ŒÂƒfƒtƒHƒ‹ƒgˆø”‚ÌŽw’肪‚ ‚邯‚ǂЂƂ‚¾‚¯Ž©•ª‚ÅŒˆ‚ß‚½‚¢‚Æ‚¢‚Á‚½‚Æ‚«‚ÉŽg‚¦‚é‚©‚ÈA‚Æ
void func(A a1 = A(1), A a2 = A(2)); // a2‚¾‚¯Žw’肵‚½‚¢‚¯‚Ço—ˆ‚È‚¢
void func(A1Is a1, A a2 = A(2))
{
func(a1.value, a2);
}
void func(A2Is a2, A a1 = A(1))
{
func(a1, a2.value);
}
func(A2Is(a)); // a2‚¾‚¯Žw’è‚Å‚«‚é
‚Æ‚¢‚Á‚½Š´‚¶‚Å‘g‚݇‚킹‚ð‘S•”ƒXƒNƒŠƒvƒg‚É“f‚©‚¹‚ÄŽg‚¤Š´‚¶
—Ⴆ‚ÎWindow‚𶬂·‚éŠÖ”‚Åcreate_window(TitleIs("test"), WidthIs(w), HeightIs(h));‚ÆŒ¾‚Á‚½Š´‚¶‚ňꕔ‚¾‚¯Œˆ‚߂Ďc‚è‚̓fƒtƒHƒ‹ƒg‚ðŽg‚¤‚Æ‚©l‚¦‚ç‚ê‚é
174:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 00:21:25
>>173
‚±‚ñ‚Ȃ̂Ƃ©
URLØÝ¸(codepad.org)
175:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 12:41:28
‚Æ‚ ‚éƒNƒ‰ƒX‚Ì‘€ì‚Å
ˆÈ‰º‚̂悤‚É
T* hoge = new T;
hoge->~T;
*hoge = new(hoge) T;
hoge->~T;
delete hoge;
‰‰ñ‚Ì‚Ýnew‚ÅŠm•Û‚µ‚Ä‚»‚ÌŒã‚Íplacement new‚ð—˜—p‚µ‚ĉ‰ñŠm•Û‚µ‚½—̈æ‚ɃIƒuƒWƒFƒNƒg‚𶬂µ
ÅI“I‚ɃfƒXƒgƒ‰ƒNƒ^‚ŗ̈æ‚ðŠJ•ú‚·‚éA‚ÆŒ¾‚¤‘€ì‚ðs‚Á‚Ä‘åä•v‚Ȃ̂łµ‚傤‚©H
176:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 12:54:20
>>175
‘åä•v‚©‚à‚µ‚ê‚È‚¢‚µA‘åä•v‚¶‚á‚È‚¢‚©‚à‚µ‚ê‚È‚¢B
–{“–‚É‚»‚ñ‚È‚±‚Æ‚ð‚·‚é•K—v‚ª‚ ‚é‚Ì‚©‚悊m”F‚µ‚ÄA‚»‚Ì•K—v«‚ðŽ¦‚·
ƒRƒƒ“ƒg‚ª“Y‚¦‚ç‚ê‚Ä‚¢‚ê‚ÎA‚â‚Á‚Ä‚à‚¢‚¢‚©‚à‚µ‚ê‚È‚¢B
177:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 12:57:28
>>175
ƒfƒXƒgƒ‰ƒNƒ^‚ð‚Q‰ñ˜A‘±‚ŌĂñ‚Å‚é
178:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 13:10:15
ƒNƒ‰ƒXA‚𶬂·‚éƒtƒ@ƒNƒgƒŠ‚ª‚ ‚Á‚ÄA
A *FactoryA::create(ArgX, ArgY, ArgZ, ...)
{
new A(ArgX, ArgY, ArgZ, ...);
}
‚±‚̂悤‚ÈŒ`‚ňø”‚ð‚»‚Ì‚Ü‚Ünew‚ɃfƒŠƒQ[ƒg‚µ‚Ä‚¢‚Ü‚·
A‚ªŒÅ’è‚È‚çƒRƒ“ƒXƒgƒ‰ƒNƒ^‚Ì”‚¾‚¯ƒI[ƒo[ƒ[ƒh‚ð—Í”C‚¹‚ɒljÁ‚·‚ê‚΂¢‚¢‚̂ł·‚ªA
Factory<A>‚̂悤‚Ƀeƒ“ƒvƒŒ[ƒgˆø”‚Ìê‡‚É‚È‚é‚Æ—Í”C‚¹‚ł͂ł«‚Ü‚¹‚ñ
‚±‚ÌŽè‚Ì–â‘è‚ð‰ñ”ð‚·‚é•û–@‚Í‚ ‚è‚Ü‚·‚©H
179:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 13:17:03
>>177
delete‚̂Ƃ«‚Éhoge‚ɵÌÞ¼Þª¸Ä‚ª‘¶Ý‚·‚邯‚«‚̂݃fƒXƒgƒ‰ƒNƒ^‚ªŒÄ‚΂ê‚邿‚¤H•v‚·‚邱‚Æ‚Ío—ˆ‚È‚¢‚Å‚µ‚傤‚©
‚â‚Í‚è‘f’¼‚É1‰ñ‚̈—‚²‚Æ‚Énew‚Ædelete‚ðŒJ‚è•Ô‚µ‚½•û‚ª—Ç‚³‚»‚¤‚Å‚·‚ËA‚ ‚肪‚Æ‚¤ŒäÀ‚¢‚Ü‚µ‚½
180:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 13:34:25
void *v = ::operator new (sizeof(Hoge));
T *p = new (v) T;
p->~T();
operator delete (p, v);
p = new (p) T;
p->~T();
operator delete (p, v);
::operator delete (v);
‚»‚ê‚É‚µ‚Ä‚à‚È‚ñ‚Å
delete (v) p;
‚Á‚Ä‘‚¯‚È‚¢‚ñ‚¾‚낤‚È
placement new/deleteŠÖŒW‚ÍŽd—l‚ª‚È‚ñ‚©‹CŽ‚¿ˆ«‚¢
181:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 13:36:02
>>179
ŒN‚ª—~‚µ‚¢‚Ì‚Í boost::optional ‚©‚à‚µ‚ê‚È‚¢B
182:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 17:57:19
>>175
new‚Í‚»‚ñ‚Ȃɒx‚‚È‚¢B
vector‚ª‚»‚ê‚â‚Á‚Ă邩‚çB
vector<T> hoge(1);//placement new‚³‚ê‚éB
hoge.resize(0); //ƒfƒXƒgƒ‰ƒNƒ^‚ªŒÄ‚΂ê‚éB
hoge.resize(1);//placement new‚³‚ê‚éB
//ƒXƒR[ƒv‚©‚ço‚ê‚ΟŽè‚ɃfƒXƒgƒ‰ƒNƒ^‚ªŒÄ‚΂ê‚éB
183:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 18:15:41
”ñPODŒ^‚É
T *p = new (v) T;
‚Á‚Ä•s–¡‚¢‚ñ‚¶‚á‚È‚©‚Á‚½H”z’u\•¶‚È‚ñ‚Ä‚ ‚Ü‚èŽg‚í‚ñ‚©‚犨ˆá‚¢‚¾‚Á‚½‚ç‚·‚Ü‚ñ
184:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 18:25:03
POD‚¶‚á‚È‚‚Ä‚à–â‘è‚È‚¢‚æ
185:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 18:27:38
ŽÀÛplacement new‚Æ•’Ê‚Ìnew‚Á‚Ăǂ̂‚ç‚¢‘¬“x‚¿‚ª‚¤‚ñH
’N‚©—˜_’l’m‚ç‚È‚¢H
186:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 18:44:42
’Pƒ‚Él‚¦‚Ä(placement new/delete‚̉ñ”*¶ƒƒ‚ƒŠŠm•Û/ŠJ•ú‚É‚©‚©‚鎞ŠÔ)‚Ì•ª‚¾‚¯‘¬‚‚È‚é
¶¬”jŠü‚µ‚Ü‚‚éꇂ̓XƒQ[‘¬‚‚Ȃ邯‚ÇA‚»‚¤‚łȂ¢ê‡‚͂قږ³ˆÓ–¡
187:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 18:49:22
‹t‚ÉŒ¾‚¦‚欔jŠü‚µ‚Ü‚‚é‚Ȃ瑂‚È‚é‚ñ‚¾‚æ‚ËH
‚¤‚µA‚¿‚å‚Á‚ÆŽÀ‘ª‚µ‚Ä‚‚éB‚ ‚肪‚Æ‚¤B
188:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/25 18:49:40
>>184
‚ ‚êA‚Ç‚¤‚¢‚¤‚Æ‚«•s–¡‚¢‚ñ‚¾‚Á‚¯EEE
189:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/26 19:15:46
>>188
ƒAƒ‰ƒCƒƒ“ƒg‚Ì–â‘è‚®‚ç‚¢‚¶‚á‚ËH
190:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/26 20:10:02
‚à‚µ‚Ü‚¸‚¢“_‚ª‚ ‚邯‚µ‚½‚ç
”z—ñ‚ðoperator new()‚Æ”z’unew‚ðŽg‚Á‚ÄŠm•Û‚µ‚½‚à‚̂ɑ΂µ‚Ä
delete[]‚ðŽg‚¦‚È‚¢A‚Æ‚©‚»‚¤‚¢‚¤“_B
191:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/26 20:13:46
>>190
‚»‚ê‚Ínew‚ÌŽž‚àŽ–î‚Í“¯‚¶‚¾‚æ‚Ë
192:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/26 20:28:29
C++0x‚Ìunion‚Å”ñPODŒ`‚ªŽg‚¦‚邿‚¤‚ɂȂé‚Ì‚Íplacement new‚ðŽg‚¤‚½‚߂Ȃ̂©‚ÈH
¡‚܂łÍboost::variant‚̂悤‚È‚±‚Æ‚ð‚·‚é‚ɂ͔z—ñ‚Å—ÌˆæŽæ‚Á‚Ä‚½‚¯‚Çunion‚ŃAƒ‰ƒCƒƒ“ƒg‚Ì–â‘è‚à–³‚ŠÈ’P‚ÉŽg‚¦‚é—l‚ɂȂé‚Ì‚©H
193:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/26 20:37:45
D&E‘æŽO”Å‚ªC++0x‚ªo‚½Œã‚Åo”Å‚³‚ê‚邿‚È
194:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/26 20:50:24
>>191
unew‰‰ŽZŽqv‚ÍAoperator new()‚ŗ̈æ‚ðŠm•Û‚µ
ƒRƒ“ƒXƒgƒ‰ƒNƒ^‚ðŒÄ‚Ño‚µ‚ĉŠú‰»‚·‚邱‚Æ‚ªŒˆ‚Ü‚Á‚Ä‚é‚ñ‚¶‚á‚È‚©‚Á‚½‚©‚ÈB
‹KŠi“Ç‚ñ‚łȂ¢‚©‚ç’m‚ç‚ñ‚¯‚ÇB
‚à‚µ‚»‚¤‚È‚çA‚»‚Ì•û–@‚ÅŠm•Û‚µ‚½ƒIƒuƒWƒFƒNƒg‚ðdelete‚ʼnð•ú‚·‚邱‚Æ‚à‹–‚³‚ê‚»‚¤‚¾‚ªB
‹KŠi“Ç‚ñ‚łȂ¢‚©‚ç’m‚ç‚ñ‚¯‚ÇB
‚Ü‚½A‚È‚‚Æ‚à
p = new T();
p->~T();
new (p) T();
‚µ‚½‚à‚̂ɑ΂µ‚Ä‚Í
delete p;
‚Í‘åä•v‚È‚ñ‚¶‚á‚È‚©‚Á‚½‚©‚ÈB
‹KŠi(ry
195:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/26 20:54:41
>>194
‚¢‚≴‚ªŒ¾‚Á‚Ä‚é‚Ì‚Íu”z—ñnewv‚à‘¶Ý‚µ‚È‚¢‚ËA‚Æ‚¢‚¤Ž–
196:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/26 20:55:40
Œ¾‚¢•û‚ª‚Ü‚¸‚¢‚È
new A[]; ‚Æ‚©‚Ío—ˆ‚邯‚ÇAŒÄ‚Ño‚¹‚é‚̂̓fƒtƒHƒ‹ƒgƒRƒ“ƒXƒgƒ‰ƒNƒ^‚Ì‚Ý
ˆø”•t‚«ƒRƒ“ƒXƒgƒ‰ƒNƒ^‚͌ĂÑo‚¹‚È‚¢
197:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/26 22:00:43
operator new/delete‚̃I[ƒo[ƒ[ƒh‚Æ‚©placement new/delete‚Í‚½‚܂Ɏg‚¤‚¯‚Ç‚»‚ê‚Ì”z—ñ”ł͈ê“x‚àŽg‚Á‚½Ž–‚È‚¢‰´ƒUƒ“ƒMƒ…ƒ‰
‚Æ‚¢‚¤‚©ƒRƒ“ƒpƒCƒ‰‚Å‹““®‚ªˆá‚¤‚µAƒOƒOƒb‚Ä‚àŽd—l‚ª—Ç‚‰ð‚ç‚ñ‚µ‚Å’ú‚ß‚½
198:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/26 22:54:00
ƒAƒƒP[ƒ^‚ÌŽ©ì‚Í—‰ð‚ª[‚‚È‚¢‚Æ‘å•ςȂ±‚ƂɂȂ邩‚ç•|‚¢‚æ‚Ë
199:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/26 22:56:32
VC‚¾‚Æ—v‘f”‚ðŠi”[‚·‚镪‚¾‚¯—]•ª‚ÉŠm•Û‚µ‚ÄA
‚»‚ÌŽŸ‚̃AƒhƒŒƒX‚ð•Ô‚·‚ñ‚¾‚Á‚¯
200:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/26 22:57:02
ƒAƒƒP[ƒ^‚ÌŽ©ì‚È‚ñ‚Ä–{“–‚É•K—v‚©‚Ç‚¤‚©
‚³‚ñ‚´‚ñ‹á–¡‚µ‚ÄŒ´‘¥“I‚É‹y‚ј‚ɂȂé‚ׂµB
201:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/26 23:07:45
Scoped Allocator‚È‚ç‘g‚Ýž‚݂łàŽg‚¦‚»‚¤‚È—\Š´
202:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 02:28:15
>>199
gcc‚à‚»‚ñ‚È‚¾‚Á‚½‚Í‚¸
‚ ‚ÆPOD‚̂Ƃ«‚Í—v‘f”—̈æ‚ðŠm•Û‚µ‚È‚¢‚Æ‚©‚ ‚Á‚½‹C‚ª‚·‚é
203:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 06:41:37
POD‚¶‚á‚È‚¢‚¯‚ǃfƒXƒgƒ‰ƒNƒ^‚ª‚È‚¢ê‡‚Á‚Ăǂ¤‚È‚ñ‚¾‚ëH
Šm‚©‚ß‚½Ž––³‚¢‚â
204:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 06:51:18
placement new‚̃fƒXƒgƒ‰ƒNƒ^‚ª‚È‚¢ê‡HƒNƒ‰ƒX‚ª“®“I‚ɗ̈æ‚ðŠm•Û‚·‚é
•¨‚¶‚á‚È‚¯‚ê‚΃fƒXƒgƒ‰ƒNƒ^‚ðˆÓ}“I‚ɌĂÑo‚³‚È‚‚Ä‚àŽÀŠQ‚͂Ȃ©‚Á‚½‚ÆŽv‚¤
„§‚³‚ê‚È‚¢‚¯‚Ç
205:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 06:55:36
‚±‚ñ‚ÈŠ´‚¶‚©
class A {
int i;
};
class B {
int* p;
public:
B() : p(new int[100]) {}
~B() { delete[] p; }
};
int main()
{
char c[1000];
A* ap = new (c) A;
// ap->~A(); // –³‚‚Ä‚àŽÀŠQ‚͂Ȃ¢
B* bp = new (c) B;
bp->~B(); // ‚È‚¢‚ƃƒ‚ƒŠƒŠ[ƒN‚·‚é
}
206:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 07:29:32
‚¢‚âA‚»‚¤‚¢‚¤˜b‚¶‚á‚È‚‚ÄA
”z—ñnew‚Å—v‘f”‚ðŠi”[‚·‚é‚̂̓fƒXƒgƒ‰ƒNƒ^ŒÄ‚Ôƒ‹[ƒv‚Ì‚½‚ß‚¾‚©‚ç
inew‘¤‚Í—v‘f”‚ª•ª‚©‚é‚̂œÁ‚É•K—v‚͂Ȃ¢‚Í‚¸j
ƒfƒXƒgƒ‰ƒNƒ^‚ª‚È‚¯‚ê‚ÎPOD‚¶‚á‚È‚‚Ä‚à”z—ñnew‚Å—v‘f”•ªŠm•Û‚·‚é•K‘R«‚͂Ȃ¢‚æ‚ËA‚Æ
‚Ü‚ Šm•Û‚µ‚Ä‚àŽÀŠQ‚Í–³‚¢‚©‚玩•ª‚Å”z—ñnew‚ðŽÀ‘•‚·‚éꇂ͖³ðŒ‚ÅŠm•Û‚·‚ê‚΂¢‚¢‚ñ‚¾‚¯‚Ç
ƒfƒtƒHƒ‹ƒg‚ł͂ǂ¤‚È‚Á‚Ä‚ñ‚Ì‚©‚ÈA‚Æ
207:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 08:25:35
>>206
‚¶‚á‚ ‚±‚¤‚¢‚¤Ž–‚©
‚¿‚Ȃ݂ÉCodeGuardŠ|‚¯‚Ă݂½‚ª‰½‚̃Gƒ‰[‚ào‚È‚©‚Á‚½‚̂ŋ°‚ç‚
–â‘è‚È‚¢‚ÆŽv‚í‚ê‚é
class A {
int i;
};
int main()
{
char c[1000];
A* ap = new (c) A[100];
// ap->~A(); // ‚È‚‚Ä‚àŽÀŠQ‚͂Ȃ¢
}
208:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:09:46
‚¢‚âA‚Ç‚¤Œ©‚Ä‚à>>203‚ªŒ¾‚¢‚½‚¢‚Ì‚Í
struct NonPod {
@int x;
@NonPod(): x(rand()) {}
@virtual int f() { return x; }
};
‚Ý‚½‚¢‚È‚à‚Ì‚ð
new NonPod[n];
‚µ‚½Žž‚ÉA—v‘f”‚ð‹L˜^‚·‚é—̈æ‚ðŠm•Û‚·‚é‚Ì‚©‚Ç‚¤‚©A‚¾‚ëB
209:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:11:50
>>208
—v‘f”‚Í‹L˜^‚µ‚È‚¢
placement new‚Ì”z—ñ”łŊm•Û‚µ‚½—̈æ‚ð delete[] ‚ʼnð•ú‚µ‚悤‚Æ‚·‚邯
•@‚©‚爫–‚
210:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:14:01
‚¾‚©‚çA>>203‚̈Ó}‚É placement new ‚ÍŠÖŒW‚È‚¢‚Á‚Ä‚Ì
211:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:16:24
>>199,>>202-203‚Ì—¬‚ꂾ‚©‚ç‚È
212:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:17:48
‚à‚¤‚ЂƂÂB
‚ǂ̈—Œn‚©‚à–¾‹L‚¹‚¸‚Éu‹L˜^‚µ‚È‚¢v‚È‚ñ‚ÄŒ¾‚¢Ø‚é‚ÈB
Žv‚¢‚Á‚«‚舗ŒnˆË‘¶‚¾‚Á‚Ä‚±‚Ƃ͊F‚í‚©‚Á‚Ä‚é‚ñ‚¾‚©‚çB
213:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:19:30
>>212
•@‚©‚爫–‚‚Á‚Ä‹KŠi•[‚É‘‚¢‚Ä‚ ‚é‚¶‚á‚ñ
‚Æ‚¢‚¤Ž–‚Í—v‘f”‚Í‹L˜^‚µ‚È‚¢
214:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:33:33
‚ÍH
215:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:35:28
>>214
>>209
‚¨‘O‚³‚ñ‚à“ªˆ«‚¢‚È
216:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:36:15
‚‚܂èA‰Ø‚©‚爫–‚‚Æ‹KŠi•[‚É‘‚¢‚ĂȂ¢ê‡‚Í
u—v‘f”‚ð•K‚¸‹L˜^‚·‚év‚Æ‘‚¢‚Ä‚ ‚é‚Á‚Ä[‚Ì‚©B
‚»‚à‚»‚à‰´‚Íu–¢’è‹`v‚Æ‘‚¢‚Ä‚ ‚é‚à‚̂͌©‚½Šo‚¦‚ª‚ ‚邪
u‰Ø‚©‚爫–‚v‚È‚ñ‚Ä‘‚¢‚Ä‚ ‚é‹KŠi‚ÍŒ©‚½‚±‚Æ–³‚¢‚¯‚Ç‚ÈB
217:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:38:35
>>216
‚¾‚©‚çu–¢’è‹`‚ÌU‚é•‘‚¢vundefined behavior‚¾‚Á‚Â[‚Ì
218:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:38:59
>>213 ‚Ç‚¤‚¢‚¤—‹ü‚¾‚æ‚—
219:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:39:27
‚‚܂è
int * p = new int[n];
‚¾‚ÆA—v‘f”‚ª‚Ç‚±‚É‚à‹L˜^‚³‚ê‚È‚¢A‚Æ‹KŠi‚̂ǂ±‚©‚É‘‚¢‚Ä‚ ‚é‚Ì‚©H
‚¾‚©‚ç
delete p[] ‚ł͂Ȃ delete p ‚ð‚µ‚Ä‚àŒ©‚ĈӋ`“®ì‚ł͂Ȃ¢‚ÆB
‚Ó[‚ñB
220:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:40:22
>>219
”nŽ”Œ©
placement new‚Ì”z—ñ”Å‚¾‚ÆŒ¾‚Á‚Ă邾‚ë[‚ª
ƒAƒz‚©
221:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:42:14
>>213>>216
–¢’è‹`‚ÌU‚é•‘‚¢‚Å‚ ‚é == —v‘f”‚ð‹L˜^‚µ‚È‚¢
‚Á‚Ä‚©H
‚¨‰Ô”¨‚ÉZ‚ñ‚Å‚¢‚é‚Á‚ÄK‚¹H
222:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:44:24
—v‘f”‚ð‹L˜^‚µ‚½‚ç–¢’è‹`‚ÌU‚é•‘‚¢‚ɂȂç‚È‚¢‚¾‚낤‚ª
223:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:45:14
‚¾‚¢‚½‚¢placement new‚̓q[ƒv—Ìˆæ‚Æ‚͉½‚ÌŠÖŒW‚à‚È‚¢‚¾‚ë
224:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:48:42
>>222-223
>>210-211‚ð10‰ñ“ǂݒ¼‚µ‚Ă݂½‚ç‚Ç‚¤H
225:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:49:53
>>222
ŸŽè‚ÉŒˆ‚ß•t‚¯‚é‚È‚æ
226:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 14:54:43
’m‚é‚©‚¢
‰´‚Í‚ ‚‚܂łàplacement new‚Ì”z—ñ”łɂ‚¢‚Ęb‚ð‚µ‚Ä‚é‚ñ‚¾
227:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 15:15:00
‚¾‚©‚çA‚Ä‚ß[‚Íuʼn‚Á‚©‚炸[[‚Á‚ÆvƒYƒŒ‚½‚±‚Æ‚µ‚©Œ¾‚Á‚Ä‚Ë[‚ñ‚¾‚æB
‚Ä‚ß[u‚¾‚¯v‚ªƒYƒŒ‚Ä‚ñ‚¾‚æB
‰½‚ªu‰´‚Í‚ ‚‚܂łàv‚¾B
>>199‹y‚Ñ>>202-203‚É‚¨‚¢‚ÄA
uoperator new[]()‚ªPODŽž‚Í—v‘f”‚̗̈æ‚ðŠm•Û‚µ‚È‚¢‚ª”ñPODŽž‚ÍŠm•Û‚·‚év˜b‚ªo‚Ä‚é
‚Å>>203‚ªu‚¶‚á‚ ƒfƒXƒgƒ‰ƒNƒ^‚Ì–³‚¢”ñPOD‚È‚ç(operator new[]‚Ì“®ì‚Í)‚Ç‚¤‚È‚Á‚Ä‚¢‚é‚Ì‚©v
‚Æ‚¢‚¤‹^–â‚ðo‚µ‚Ä‚¢‚éB
‚Ȃ̂É>>204-205‚¾‚Ì>>207‚¾‚ÌAŠ®àø‚É˜_“_‚ª‚í‚©‚Á‚ĂȂ¢‘‚«ž‚Ý‚ð‚µ‚Ä‚¢‚éB
>>206‚Åu‚»‚¤‚¶‚á‚È‚‚Äv‚ÆŽw“E‚³‚ê‚Ä‚¢‚é‚É‚à‚©‚©‚í‚炸AƒYƒŒ‚Ü‚‚èB
(Œ¾‚Á‚Æ‚‚ªA>>197-206‚Ì—¬‚ê‚Ì’†‚ɂ͉´‚Ì‘‚«ž‚݂͈ê‚Â‚à–³‚¢)
‚µ‚©‚àAu–¢’è‹`“®ì‚Å‚ ‚év‚Æ‚Íu—v‘f”‚ð‹L˜^‚µ‚È‚¢‚±‚Ƃł ‚év‚Æ‚¢‚¤
‘¼l‚ɂ͗‰ð•s”\‚È—‹ü‚܂Ŏ‚¿o‚µ‚ÄB
>>203‚Í‚¨‚»‚ç‚u(‹KŠi‚ł͉½‚àŒˆ‚ß‚ç‚ê‚Ä‚¢‚È‚¢‚¾‚낤‚ª)
ŒÂX‚̈—Œn‚ł͂ǂ¤‚È‚ñ‚¾‚낤Hv‚Æ‚¢‚¤‹^–â‚ðo‚µ‚½‚¾‚¯‚Ȃ̂É
ŸŽè‚Éu—v‘f”‚ð‹L˜^‚·‚邱‚Æ‚ª‹KŠi‚ÅŒˆ‚ß‚ç‚ê‚Ä‚¢‚év‚Æ‚¢‚¤‚±‚Ƃɂµ‚ÄB
228:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 15:17:21
‚ Aª‚Ìuoperator new[]()‚Ì“®ìv‚Æ‚¢‚¤‚͈̂Ⴄ‚©B
new[]‰‰ŽZŽq‚ªu—v‘f”•ª‚̗̈æ‚𑽂߂Éoperator new()‚É—v‹‚·‚év‚ª³‚µ‚¢‚©‚ÈB
229:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 15:19:50
>>226
¡“ǂݕԂµ‚Ă݂½‚ªA>>206‚ªu‚»‚¤‚¶‚á‚È‚‚Äv‚ÆŒ¾‚Á‚Ä‚¢‚é“à—e‚Ì
u”z—ñnewv‚ðŸŽè‚Éu”z’unewv‚Ɠǂݑւ¦‚ĂȂ¢‚©H
230:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 17:01:50
ƒfƒtƒHƒ‹ƒg‚ł͂ǂ¤‚È‚Á‚Ä‚ñ‚¾‚ëA‚Á‚Ä‚ñ‚¾‚©‚ç
–¾‚ç‚©‚Éplacement new‚ł͂Ȃ¢‚¾‚ë
231:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 20:53:10
à–¾”\—̖͂³‚¢lŠÔ‚ª‚‚¢‚¤‚Á‚©‚莩ŒÈ•]‰¿‚‚©‚Á‚½‚è‚·‚邯A
‚»‚±‚ç’†‚ÌlŠÔ‚ð”nŽ”nŽŒ¾‚Á‚Ä•é‚炳‚È‚«‚á‚¢‚¯‚È‚¢‚©‚炽‚¢‚Ö‚ñ‚¾B
232:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 22:35:11
—‰ð”\—Í‚ª‘«‚è‚È‚¢“z‚Ì•û‚ªŽn––‚É•‰‚¦‚È‚¢‚¯‚Ç
233:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 22:38:41
‚Ç‚Á‚¿‚à‚Ç‚Á‚¿‚¾
234:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 22:48:53
–³‘ʂɃvƒ‰ƒCƒh‚¾‚¯‚‚¢‚©‚ç–{“–‚Ɏז‚
235:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 22:57:20
l‚ð•Ï‚¦‚悤‚ÆŽv‚Á‚½‚ç‚Ü‚¸Ž©•ª‚ª•Ï‚í‚ç‚É‚á‚È‚ç‚ñ‚æ
Ž©•ª‚ª•Ï‚í‚炸‚É‘¼l‚ð•Ï‚¦‚悤‚ÆŽv‚Á‚Ä‚àA•S–œ”NŠ|‚¯‚Ä‚à1ƒ~ƒŠ‚à•Ï‚í‚ç‚È‚¢‚ÆŽv‚¦
236:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 23:33:49
‚È‚ñ‚©‚·‚°[•KŽ€‚É’£‚è•t‚¢‚Ä‚é“z‚ª‹‚é‚ËB
237:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 23:48:13
‚Æ‚¢‚¤‚©•ª‚©‚Á‚ĂȂ¢“z‚Pl‚¾‚¯‚¾‚ë
l‚Ì‚¹‚¢‚É‚·‚é‘O‚ÉŽü‚è‚ð‚æ‚Œ©‚ë‚Æ
238:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/27 23:52:39
>>229‚ªƒYƒoƒŠŠjS‚ð“Ë‚¢‚Ä‚é‚È
239:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 01:47:39
‚·‚݂܂¹‚ñDŠÂ‹«ˆË‘¶‚ÌŽ¿–â‚Ȃ̂ł·‚ª
long‚âint‚̃TƒCƒY‚ª64bit‚â32bit‚ŕςí‚é—á‚͂悌©‚é‚̂ł·‚ª
short‚âlong long‚ª•Ï‚í‚éŽÀ—á‚Á‚Ä‚ ‚é‚̂łµ‚傤‚©H
‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·
240:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 02:21:23
>>239
short ‚Í -32,767 ` +32,767 ‚ð•\Œ»‚Å‚«‚邱‚Æ‚ª•ÛØ‚³‚ê‚Ä‚¢‚é ¨ 16bit ˆÈã
long long ‚Í -9,223,372,036,854,775,807 ` +9,223,372,036,854,775,807 ‚ð•\Œ»‚Å‚«‚邱‚Æ‚ª•ÛØ‚³‚ê‚Ä‚¢‚é ¨ 64bit ˆÈã
‚»‚êˆÈŠO‚ÍŒˆ‚ß‚ç‚ê‚Ä‚¢‚È‚¢‚©‚ç•Ï‚í‚é‚©‚à‚µ‚ê‚È‚¢
ŽÀ—á‚Ícc
short ‚ª4ƒoƒCƒg‚ȃRƒ“ƒpƒCƒ‰‚ðŽ©•ª‚Åì‚ê‚΂¢‚¢
241:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 03:30:55
>>203
ƒRƒ“ƒXƒgƒ‰ƒNƒ^EƒRƒs[ƒRƒ“ƒXƒgƒ‰ƒNƒ^E‘ã“ü‰‰ŽZŽq‚ð’è‹`‚µ‚½ƒNƒ‰ƒX‚ÅŽŽ‚µ‚Ă݂½B
‚È‚‚Æ‚àcodepad‚Ìgcc‚ÍAƒfƒXƒgƒ‰ƒNƒ^‚Ì—L–³‚̂݌©‚Ä‚é‚Ý‚½‚¢B
URLØÝ¸(codepad.org)
242:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 03:43:49
>>239
char‚̃TƒCƒY‚ª9ƒrƒbƒg‚Æ‚©32ƒrƒbƒg‚Æ‚¢‚¤ŠÂ‹«‚ÍŽÀÝ‚·‚é‚Ì‚ÅA‚½‚Ô‚ñ
short‚âlong long‚à‚»‚ê‚È‚è‚ɕςȃTƒCƒY‚É‚È‚é‚ÆŽv‚¤B
ˆê”Ê“I‚ÈWindows/Linux/Mac‚ÌŠJ”ŠÂ‹«‚Å‚ÍA64ƒrƒbƒgƒ^[ƒQƒbƒg‚Å‚ ‚ë
‚¤‚Æ 16bit shortA64bit long long ‚µ‚©Œ©‚½‚±‚ƂȂ¢‚ËB
243:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 04:29:53
>>240
>>242
‚±‚ê‚Í¢‚è‚Ü‚µ‚½EEE
‚Æ‚à‚ ‚êŽQl‚ɂȂè‚Ü‚µ‚½
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·D
244:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 08:30:09
¢‚éEEE‚Ì‚©H
stdint.h ‚Ì int16_t, int64_t ‚ðŽg‚¦‚΂¢‚¢‚Æ‚¢‚¤˜b‚ł͂Ȃ¢‚Ì‚©
245:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 15:29:14
C++‚ł̃ƒ‚ƒŠŠm•ۂɂ‚¢‚Ä‹³‚¦‚ĉº‚³‚¢B
—v‘f”‚ª•Ï“®‚·‚é”z—ñ‚̉ò‚ׂ̗̈̈æ‚ð–c‘å‚È”Šm•Û‚·‚邯‚µ‚Ü‚·B
ƒf[ƒ^1[70]
ƒf[ƒ^2[1]
ƒf[ƒ^3[36]
ƒf[ƒ^4[12]
E
E
E
‚»‚µ‚Ä‚»‚ê‚ç‚ðŠÇ—‚·‚éƒAƒhƒŒƒX‚Ì”z—ñ‚ðì‚è‚Ü‚·B
ƒf[ƒ^1‚ÌŠJŽnƒAƒhƒŒƒX
ƒf[ƒ^2‚ÌŠJŽnƒAƒhƒŒƒX
ƒf[ƒ^3‚ÌŠJŽnƒAƒhƒŒƒX
ƒf[ƒ^4‚ÌŠJŽnƒAƒhƒŒƒX
E
E
E
‚±‚̂Ƃ«A—̈æŠm•ۂ͂ЂƂ‚¸‚Ânew‚Æ‚©‚ÅŠm•Û‚µ‚½‚Ù‚¤‚ª‚¢‚¢‚̂łµ‚傤‚©H
‚»‚ê‚Æ‚à‹‘å‚ȗ̈æ‚ðŽ©•ª‚ÅŠm•Û‚µA‚»‚Ì’†‚ÉŒ„ŠÔ‚ð‹l‚߂邿‚¤‚Ƀf[ƒ^‚ð‹l‚ßž‚ñ‚Å‚¢‚
ŠÇ—ƒNƒ‰ƒX‚ðŽ©ì‚·‚é‚Ù‚¤‚ª‚¢‚¢‚̂łµ‚傤‚©H
‘OŽÒ‚̂ق¤‚ªŠÈ’P‚»‚¤‚ł͂ ‚é‚ñ‚Å‚·‚ªAC++‚Ì“®ì‚Ì’mޝ‚ª‚ ‚Ü‚è‚È‚‚Ĉȉº‚Ì•sˆÀ‚ª‚ ‚è‚Ü‚·B
E–c‘å‚È”‚±‚Ü‚²‚܂Ɨ̈æŠm•Û‚·‚邱‚Ƃʼn½‚ç‚©‚̈—•‰‰×‚ª”¶‚µ‚È‚¢‚©H
E‚à‚µ‚à“K“–‚ÉŠm•Ûo—ˆ‚é‹ó‚«—̈挩‚‚¯‚ÄŠm•Û‚·‚éê‡AŒ„ŠÔ‚ª‚܂΂ç‚ɂȂÁ‚Ä
@ƒƒ‚ƒŠ‚ª’f•Љ»‚³‚êA–{—ˆ‰Â”\‚ÈŠm•Û—Ê‚æ‚è‚àŠm•Ûo—ˆ‚é—e—Ê‚ª‚È‚‚È‚Á‚Ä‚µ‚Ü‚í‚È‚¢‚©H
ƒf[ƒ^—̈æ‚Í”–œ‚©‚çň«”•S–œŒÂ’PˆÊ‚ÅŠm•Û‚µA•p”É‚ÉÁ‚µ‚½‚èA’ljÁ‚·‚邯‚µ‚Ü‚·B
‹X‚µ‚‚¨Šè‚¢‚µ‚Ü‚·B
246:245
10/03/28 15:32:43
‚È‚¨Avector‚Ȃǂ̑¶Ý‚Í’m‚Á‚Ä‚¢‚é‚̂ł·‚ªA‚»‚Ìê‡A€”õ‚µ‚Ä‚¢‚é—e—ʂ𒴂¦‚½ê‡A
—̈æ‚ÌÄŠm•Û‚É‚æ‚Á‚ăf[ƒ^‚̃AƒhƒŒƒX‚ª•Ï‚í‚Á‚Ä‚µ‚Ü‚¢‚Ü‚·B
ƒvƒƒOƒ‰ƒ€‚̓f[ƒ^‚̃AƒhƒŒƒX‚ð‹L‰¯‚µ‚Äî•ñ‚ð‚â‚èŽæ‚è‚·‚é•”•ª‚ª‘½‚¢‚Ì‚Åvector‚Íl‚¦‚Ä‚¢‚Ü‚¹‚ñB
247:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 15:38:42
>>245
ƒf[ƒ^‚Í’P“Æ‚Ånew‚·‚ê‚΂©‚Ü‚í‚È‚¢B‚æ‚Á‚Û‚Ç‘½‚¢ê‡‚̓v[ƒ‹‚ȂǂðŽg‚¤‚ªA‚½‚¢‚Ä‚¢‚ÌꇂÍnew‚ÅŽ–‘«‚è‚éB
‚»‚±‚ւ̃|ƒCƒ“ƒ^‚ðvector‚ɕێ‚·‚ê‚΂¢‚¢Bƒ|ƒCƒ“ƒ^‚¾‚¯‚ð•ÛŽ‚·‚é‚È‚çƒxƒNƒ^[‚ÌL’£‚¶‚Ì–â‘è‚ÍŠÖŒW‚È‚‚È‚éB
vector‚É’¼Úƒ|ƒCƒ“ƒ^‚ð“ü‚ê‚邯delete‚ª–Ê“|‚Ȃ̂Åshared_ptr‚ðŽg‚¤‚Ì‚ªŠy‚¾B
248:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 15:43:19
int main() {
int *p = new int;
cout << p << endl;
p = new int;
cout << p << endl;
delete p;
return 0;
}
‚ÍŠÔˆá‚Á‚Ă܂·‚©H
ʼn‚Ìp‚̓Š[ƒN‚ɂȂéH
249:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 15:46:00
>>248
ƒŠ[ƒN‚·‚éB
‚Q‰ñnew‚Ådelete‚P‰ñ‚¾‚©‚çŠmŽÀB
250:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 15:49:13
>>245
ƒf[ƒ^‚Ì—v‘f”‚ÉŠÖ‚·‚铌vî•ñ‚ª‚È‚¢‚±‚ƂɂÍA
new‚Å\•ª‚Æ‚µ‚©Œ¾‚¦‚È‚¢B
‚½‚¾A—v‘f”‚æ‚è—]•ª‚ÉŠm•Û‚µ‚ÄAŒˆ‚Ü‚Á‚½ƒTƒCƒY‚Ì”{”‚É‘µ‚¦‚邱‚Æ‚ÅA
ˆê”Ê“I‚ɂ͒f•Љ»‚ðŒ¸‚ç‚·‚±‚Ƃ͂ł«‚邯Žv‚¤B
251:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 15:49:15
>>249
‘¦ƒŒƒX‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B
“¯‚¶•Ï”‚ÍŽg‚¢‚܂킵‚µ‚È‚¢‚Ì‚ªŠî–{‚Å‚·‚©H
252:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 15:58:57
>>251
‚¤‚ñB
Žg‚¢‚܂킵‚Ä‚àˆê؃ƒŠƒbƒg‚ª‚È‚¢‚΂©‚è‚©A“ǂ݂ɂ‚¢‚µÅ“K‰»‚Ì–WŠQ‚ɂȂéB
253:245
10/03/28 16:10:23
>>247
—L“‚²‚´‚¢‚Ü‚·B‚½‚¾‚â‚Í‚è•sˆÀ‚Ȃ̂ÍAOS‚©‚猩‚ăvƒƒOƒ‰ƒ€‚ªƒƒ‚ƒŠ‚Ì‚±‚±‚©‚炱‚±‚܂łðŽg—p‚µ‚½‚¢‚Æ—\–ñinew‚ÅŠm•Ûj‚·‚邯Žv‚¤‚̂ł·‚ªA
‚»‚Ì—\–ñ‚µ‚½—̈æ‚̃f[ƒ^i‚±‚±‚©‚炱‚±‚Ü‚Åj‚ð•ÛŽ‚µ‚È‚¢‚Æ‚¢‚¯‚È‚¢‚ÆŽv‚¤‚̂ł·‚ªAň«”•S–œŒÂ‚̃f[ƒ^‚ðŠm•Û‚·‚éê‡A
‘OŽÒ‚ł͊JŽniƒAƒhƒŒƒX{I—¹ƒAƒhƒŒƒXj–”•S–œŒÂ•ª‚̃ƒ‚ƒŠ‚ðè—L‚µ‚Ä‚µ‚Ü‚¢AŒãŽÒ‚¾‚ÆiŠJŽnƒAƒhƒŒƒX{I—¹ƒAƒhƒŒƒXj‚̈êŒÂ‚݂̂ÅÏ‚Ý
‘OŽÒ‚¾‚Æ‚»‚ꂾ‚¯‚ŃƒK’PˆÊ‚̃ƒ‚ƒŠÁ”‚Ä‚µ‚Ü‚í‚È‚¢‚̂łµ‚傤‚©H
>>250
—L“‚²‚´‚¢‚Ü‚·B‚È‚é‚Ù‚ÇA—Ⴆ‚Ηv‘f”‚ð‚P‚O‹æØ‚è‚Å”»’肵‚Ä‚»‚Ì‹æØ‚è‚ÅŠm•Û‚·‚邱‚Ƃɂæ‚èA
ˆê“xŠJ•ú‚³‚ê‚ÄŽ•”²‚¯‚ɂȂÁ‚½—̈æ‚ÉV‚µ‚¢ƒf[ƒ^‚ª‚·‚Á‚Û‚è‚͂܂é‰Â”\«‚ª‚‚܂邯‚¢‚¤‚±‚Ƃł·‚ËH
ŽQl‚É‚µ‚Ü‚·B
254:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 16:17:03
>>253
ƒq[ƒv‚ÌŠÇ——̈æ‚Ì‚±‚ÆH‚P‚O‚O–œ‚Å‚à‚P‚O”ƒƒK‚¾‚µwindows‚È‚ç–â‘è‚È‚¢‚¾‚낤B
‚»‚ê‚æ‚è‚àƒq[ƒv‚ÌÅ‘åƒTƒCƒY‚ð‹C‚É‚µ‚½‚Ù‚¤‚ª—Ç‚‚È‚¢‚©‚ÈB
255:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 16:22:51
>>253
悸‚͋𒼂Éì‚Á‚Ă݂½‚ç?
‚»‚ê‚ð“®‚©‚µ‚Ă݂ê‚Ζâ‘è“_‚à‚æ‚è”»‚èˆÕ‚¢‚¾‚낤‚µƒfƒoƒbƒK‚Å’Ç‚¤‚Ȃǂµ‚Ä’mŒ©‚𓾂ç‚ê‚éƒ`ƒƒƒ“ƒX‚à‘‚¦‚éB
Žn‚ß‚©‚ç‚«”\‚ð–ÚŽw‚µ‚½‚çAƒfƒoƒbƒO‚Ì’iŠK‚Å“ñi‚àŽOi‚à‚¢‚©‚È‚‚Ȃ邼B
256:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 16:34:33
ƒf[ƒ^‚ÍŒã‚ë‚ɒljÁ‚·‚邾‚¯‚Ȃ킯H
‚»‚ê‚È‚çdeque‚ðŽg‚¤‚Æ‚¢‚¢‚æB
deque‚ÍŒã‚ë‚ɒljÁ‚·‚邾‚¯‚Ȃ烃‚ƒŠ‚ÌÄ”z’u‚Í‹N‚±‚ç‚È‚¢B
257:245
10/03/28 16:48:23
>>256
—L“‚²‚´‚¢‚Ü‚·B
ƒf[ƒ^ŒQ‚Ì’†ŠÔ‚©‚甲‚¢‚½‚è‚às‚¢‚Ü‚·‚ªA•ʂ̉ӊ‚ł͎g‚¦‚é‚©‚à’m‚ê‚Ü‚¹‚ñB
>>254
>>255
—L“‚²‚´‚¢‚Ü‚·B
ŽÀŒ±“I‚Æ‚¢‚¤‚©Ž©•ª‚̃vƒƒOƒ‰ƒ€‹Zp‚ÌŒüã‚ׂ̈̃gƒŒ[ƒjƒ“ƒO‚ðŒ“‚Ë‚ÄˆÈ‰º‚ÌŽd—l‚É‚µ‚悤‚Æ‚¨‚à‚¢‚Ü‚·B
Eƒƒ‚ƒŠƒv[ƒ‹‚ő傫‚ȗ̈æ‚ðŠm•Û‚·‚éB
@‚±‚̗̈æ‚ð’´‚¦‚éꇂ͒iŠK“I‚ɒljÁŠm•Û‚·‚éB
E—v‘f”‚Í‚TŒÂA‚P‚OŒÂA‚P‚TŒÂ‚Ȃǂ̒PˆÊ‚ÅŠm•Û‚·‚éB
@‚±‚ê‚ÍŠJ•ú‚É‚æ‚莕”²‚¯‚ɂȂÁ‚½‚Æ‚±‚ë‚É‚·‚Á‚Û‚è‚͂܂è‚â‚·‚‚·‚邽‚ßB
@‚Ü‚½ƒƒ‚ƒŠƒv[ƒ‹Žg—p‚É‚æ‚葼‚̃AƒvƒŠƒP[ƒVƒ‡ƒ“‚É‚æ‚é–WŠQ‚ª‚È‚‚È‚è
@‚æ‚è‚͂܂è‚â‚·‚‚È‚éB
258:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 17:05:40
vector<T*> data;
deque<T> pool;
queue<T*> recycle;
‚ð—pˆÓ‚µ‚ÄA
Eƒf[ƒ^‚ÍŠî–{“I‚Épool‚©‚çŽæ‚Á‚Ä‚«‚Ädata‚ɃAƒhƒŒƒX‚ð“ü‚ê‚ÄŽg‚¤
EŽg‚¢I‚í‚Á‚½ƒf[ƒ^‚Ídata‚©‚ç휂µ‚Ärecycle‚ɃAƒhƒŒƒX‚ð“ü‚ê‚é
Erecycle‚Ƀf[ƒ^‚ªŽc‚Á‚Ä‚éꇂÍpool‚𖳎‹‚µ‚Ärecycle‚©‚çdata‚ɃAƒhƒŒƒX‚ðˆÚ‚·
‚±‚ñ‚ÈŠ´‚¶‚Å‚¢‚¢‚ñ‚¶‚á‚È‚¢
259:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 17:14:24
ƒƒ‚ƒŠƒv[ƒ‹‚Á‚Ĕėp‰»‚·‚邿‚è–Ú“I•ʂɓª‚Ђ˂Á‚Ä‚»‚̂‚ÇÅ“K‰»‚µ‚½•û‚ª—Ç‚‚ËH
260:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 17:15:09
>>257
‹Zp‚ðŒüコ‚¹‚½‚¢‚ÆŽv‚¤‚È‚çæ‚É‚±‚ê‚ð“Ç‚ñ‚Å‚¨‚¯B
Wikipedia€–ÚØÝ¸
•sˆÀ‚â‘z‘œ‚ð‚à‚Æ‚ɃR[ƒh‚ð•¡ŽG‰»‚³‚¹‚é‚̂͗D‚ꂽ‹ZpŽÒ‚Ì‚·‚邱‚Ƃł͂Ȃ¢B
261:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 17:18:00
—L“‚ÆŒ¾‚¢‚È‚ª‚çA>255‚𖳎‹‚µ‚Ä‚Ä΂¦‚éB
262:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 17:18:46
•S–œ’PˆÊ‚Ånew/delete‚ª•p”É‚És‚í‚ꂽ‚ç‚»‚è‚ᎎ‚·‚܂łà‚È‚ƒpƒtƒH[ƒ}ƒ“ƒX—Ž‚¿‚é‚í
263:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/28 23:09:23
‚¾‚¢‚½‚¢A‰½‚ðŠwK‚µ‚½‚‚Ä‚»‚ñ‚È‚à‚ñì‚낤‚ÆŽv‚Á‚½‚Ì‚©
•S–œ‚̃I[ƒ_[‚¾‚ÆAƒƒ‚ƒŠ‰]X‚æ‚背ƒXƒ|ƒ“ƒX‚̂ق¤‚ª–â‘è‚ɂȂ肻‚¤‚¾‚ª
264:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 10:22:58
•S–œ’PˆÊ‚Ånew/delete‚ð•p”É‚És‚¤ƒvƒƒOƒ‰ƒ€‚Á‚ĉ½H
‚Ç‚±‚©‚Ìl‹CƒT[ƒo[‚Å‚àˆµ‚Á‚Ä‚ñ‚Ì‚©‚ÈH
265:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 13:26:29
ƒvƒŠƒRƒ“ƒpƒCƒ‹Ï‚݃wƒbƒ_[‚ðŽg‚¤ÛA’†‚É
define‚Å’†g‚ª•ω»‚·‚éƒeƒ“ƒvƒŒ[ƒg‚ð“ü‚ê‚Ä‚à
–â‘è‚È‚¢‚Å‚µ‚傤‚©H
‚â‚Í‚è“ǂݞ‚Ý•û‚É‚æ‚Á‚Ă͖â‘è‚ ‚èH
266:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 19:04:37
new‚ɑ΂µ‚Ädelete[]‚Í‚µ‚¿‚á‚¢‚¯‚È‚¢‚à‚ÌH
‚à‚µ‚‚̓|ƒCƒ“ƒ^‚Ì’†g‚ð‰½‚ç‚©‚Ì•û–@‚Å’P‘Ì‚©”z—ñ‚©‹æ•Ê‚·‚é•û–@‚Í–³‚¢‚à‚̂ł·‚©H
267:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 19:10:31
ƒRƒ“ƒpƒCƒ‹‘O‚Ƀm[ƒ}ƒ‹new/deleate‚ð”z—ñnew/delete‚É’uŠ·‚¦‚éƒXƒNƒŠƒvƒg‘–‚点‚ê‚΂¢‚¢B
268:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 19:10:40
>>266
’P‘̂ȂçƒXƒ}[ƒgƒ|ƒCƒ“ƒ^‚ðA”z—ñ‚È‚çSTLƒRƒ“ƒeƒi‚ðŽg‚¦‚΂»‚ñ‚ÈS”z‚Í—v‚è‚Ü‚¹‚ñB
‚Â[‚©AJavaScript‚̈«–²‚ÌÄŒ»‚ɂȂ邩‚çƒ|ƒCƒ“ƒg悪”z—ñ‚©‚Ç‚¤‚©‚ð”»’è‚·‚é‚È‚ñ‚Ä‚±‚Æ‚Íl‚¦‚È‚¢•û‚ª‚¢‚¢B
269:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 19:11:21
>>266
> new‚ɑ΂µ‚Ädelete[]‚Í‚µ‚¿‚á‚¢‚¯‚È‚¢‚à‚ÌH
‚¾‚ßB–¢’è‹`‚Ì“®ìB•@‚©‚爫–‚‚ªo‚é‚©‚àB
> ‚à‚µ‚‚̓|ƒCƒ“ƒ^‚Ì’†g‚ð‰½‚ç‚©‚Ì•û–@‚Å’P‘Ì‚©”z—ñ‚©‹æ•Ê‚·‚é•û–@‚Í–³‚¢‚à‚̂ł·‚©H
‚È‚¢B
T* p = new T;
T* p = new T[10];
T a(0);
T* p = &a;
p‚ª‚±‚Ì3‚‚̂ǂê‚Ȃ̂©‚·‚ç”»’è•s‰Â”\B
270:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 19:14:08
> ”z—ñ‚È‚çSTLƒRƒ“ƒeƒi‚ðŽg‚¦‚Î
boost::shared_array‚Á‚Ä‚Ì‚à‚ ‚邺‚æI
271:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 22:05:27
boost‚̃v[ƒ‹‚Á‚Ä“Z‚߂ĂƂ騑«‚è‚È‚‚È‚Á‚½‚ç‚Ü‚½“Z‚߂ĂƂ騂܂Ƃ߂ĔjŠü‚Á‚Ä‚µ‚Ä‚é‚ÌH
ÅŒã‚̂܂Ƃ߂ĔjŠü‚ð‚µ‚È‚©‚Á‚½‚牄X‚ƃƒ‚ƒŠH•t‚µ‚Ä‚¢‚‚Ì‚©‚ÈH
272:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 22:10:18
make_sieve“à‚Ìfree(sieve)‚ÅŽ€‚Ê‚ñ‚¯‚lj½‚ªŒ´ˆöH
URLØÝ¸(kansai2channeler.hp.infoseek.co.jp)
ŠÂ‹«
ƒRƒ“ƒpƒCƒ‰FVS2008
OSFXP SP3
‚»‚Ì‘¼FBCC‚¾‚ƃGƒ‰[‚ð“f‚©‚È‚¢
¡‹C‚¢‚½‚¯‚ÇI—¹Žž‚Éprimes‚ðŠJ•ú‚µ‚ĂȂ¢‚̂͋C‚É‚µ‚È‚¢‚ÅEEE
273:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 22:40:24
>>272
Error 00001. 0x130610 (Thread 0x0EEC):
Access overrun: Attempt to access 4 byte(s) at 0x00B8F550+4000, that is at
offset 0+4000 in heap block 0x00B8F550 which is only 4001 bytes long.
| sieve1.c line 27:
| if(sieve==NULL) exit(1);
|
|> for(i=0;i<=limit;i++) sieve[i]=0;
| for(i=4;i<=limit;i+=2) sieve[i]=1;
| for(i=3;i<=limit/2;i+=2){
Call Tree:
0x0040123C(=sieve1.exe:0x01:00023C) sieve1.c#27
0x004011A3(=sieve1.exe:0x01:0001A3) sieve1.c#13
0x32AD8D9E(=CC32100MT.DLL:0x01:0D7D9E)
The memory block (0x00B8F550) [size: 4001 bytes] was allocated with malloc
| sieve1.c line 24:
| void make_sieve(int limit){
| int i,j,idx,cnt;
|> int *sieve=(int*)malloc(sizeof(int)*limit+1);
| if(sieve==NULL) exit(1);
|
Call Tree:
0x0040121A(=sieve1.exe:0x01:00021A) sieve1.c#24
0x004011A3(=sieve1.exe:0x01:0001A3) sieve1.c#13
0x32AD8D9E(=CC32100MT.DLL:0x01:0D7D9E)
‚È‚ñ‚©ˆê”tƒGƒ‰[o‚é
”͈͊O‚ðƒAƒNƒZƒX‚µ‚Ä‚é‚Ý‚½‚¢‚¾‚Ë
274:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 22:41:25
‚Í[‚ñ
malloc(sizeof(int)*(limit+1));@‚̊ԈႢ‚¶‚á‚Ë[‚ÌH
275:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 22:47:02
int x = 0xXXXXXXXX;
unsigned int y = static_cast<unsigned int>(x);
‚±‚̃LƒƒƒXƒg‚ÅÅãˆÊƒrƒbƒg‚Í•W€‚Å•K‚¸ˆÛŽ‚³‚ê‚Ü‚·‚©H
276:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 22:59:13
>>273-274
‚»‚ꂾIIŽw“E‚³‚ê‚é‚܂ŋC‚©‚È‚©‚Á‚½‰´ƒAƒz‚·‚¬‚é‚—
ƒTƒ“ƒNƒX
277:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 23:27:22
>>265
ƒvƒŠƒRƒ“ƒpƒCƒ‹ƒwƒbƒ_[‚ðƒCƒ“ƒNƒ‹[ƒh‚·‚é‘O‚ÉAˆÓ–¡‚Ì‚ ‚é•¶‚ð‘‚¢‚Ă͂¾‚ßB
‚¾‚©‚çdefine‚É‚æ‚é•ÏX‚͂ł«‚È‚¢B
278:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 23:49:30
>>265
—Ⴆ‚ÎVC‚ł͂±‚ñ‚ȧŒÀ‚ª‚ ‚éB
URLØÝ¸(msdn.microsoft.com)
define‚ð•ÏX‚·‚邽‚уvƒŠƒRƒ“ƒpƒCƒ‹‚ð‚â‚è’¼‚¹‚΂¢‚¢‚ñ‚¶‚á‚È‚¢H
279:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/29 23:55:26
•Êl‚¾‚ª‰¡ƒŒƒXB
‚‚܂èƒvƒŠƒRƒ“ƒpƒCƒ‹ƒwƒbƒ_‚ð•¡”—pˆÓ‚µ‚ëA‚ÆH
280:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/30 01:14:17
ƒvƒŠƒRƒ“ƒpƒCƒ‹Žg‚¤‚Ì‚ð‚â‚߂邯‚¢‚¤•û–@‚à‚ ‚é
281:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/30 01:41:18
ƒvƒƒWƒFƒNƒg‚̃tƒHƒ‹ƒ_\¬‚Å‚¢‚¢‚â‚è•û‚È‚¢‚©‚È
boost‚ðƒ}ƒl‚µ‚悤‚©‚ÆŽv‚Á‚½‚¯‚ǃ\[ƒXŒ©‚Ä‚àboost‚ª‚Ç‚¤‚¢‚¤ƒ‹[ƒ‹‚Å‚â‚Á‚Ä‚é‚Ì‚©‚í‚©‚ç‚ñ‚©‚Á‚½EEE
282:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/30 02:11:54
>>281 ¡‚ª‚Ç‚ñ‚È\¬‚ÅA‚»‚ê‚̉½‚ª‹C‚É“ü‚ç‚È‚¢‚Ì‚©q‚ׂæB
283:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/30 15:53:11
Windows‚ÅCPU‚ÌŽü”g”‚ðŽæ“¾‚·‚é•û–@‚ð‹³‚¦‚Ä‚‚¾‚³‚¢
284:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/30 16:20:33
T& GetT();
T const& GetT()
‚±‚̂悤‚ÉÒÝÊÞŠÖ”‚̕Ԃè’l‚ªconst‚Æ”ñconst‚̃I[ƒo[ƒ[ƒh‚͉”\‚Ȃ̂łµ‚傤‚©H
285:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/30 19:31:15
T& GetT();
T const& GetT() const;
‚±‚ê‚È‚ç‰Â”\B
obj.GetT() ‚Æ‚µ‚Ä
obj‚ªconst‚È‚ç‚ÎŒãŽÒ‚ªA
‚»‚¤‚łȂ¯‚ê‚ΑOŽÒ‚ªŒÄ‚΂ê‚éB
286:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/30 21:07:04
>>277-278
‚â‚Í‚è–â‘肪‚ ‚è‚»‚¤‚Å‚·‚ËB
ŽÀÛŽg‚Á‚Ä‚é‚Ì‚ÍBCB‚È‚ñ‚ÅAVC‚ð^Ž—‚µ‚Ä
ê—p‚̃wƒbƒ_[ì‚Á‚Ä“¯ˆê‚É‚È‚é‚æ‚¤‚É‚µ‚Æ‚«‚Ü‚·B
‚ ‚肪‚Æ‚¤B
287:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/30 22:07:09
char (*a)[4] = new char[10][4];
‚Ìdelete‚Ídelete(a)A‚»‚ê‚Æ‚àdelete [] (a)?
Ž©•ªdelete [] (a)‚ÆŽv‚¤‚ñ‚¾‚¯‚ÇA‚Ç‚¤H
delete(a)‚¾‚ƃƒ‚ƒŠƒŠ[ƒN‚ɂȂç‚È‚¢‚ÌH@‚±‚ê‚Å‚à‘S‚ÄŠJ•ú‚³‚ê‚é‚Ì
288:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/31 00:52:34
>>287
delete[]‚ðŽg‚¢‚Ü‚µ‚傤
new char[10][4]; ‚Ì10‚͕ϔ‚Å‚à‚æ‚Achar (*)[4]A‚‚܂ècharŒ^‚Ì
—v‘f”4‚Ì”z—ñ‚ւ̃|ƒCƒ“ƒ^‚ð”z—ñŠm•Û‚·‚鉉ŽZŽq‚Ȃ̂ÅAdelete‚Í
[]‚ð•t‚¯‚È‚¢‚ƃƒ‚ƒŠƒŠ[ƒN‚µ‚Ü‚·A‚Æ‚¢‚¤‚æ‚è–¢’è‹`‚Ì“®ì‚Å‚·
289:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/31 17:26:59
C/C++‚ɂ‚¢‚ÄŠî–{“I‚ÈŽ–‚©‚à‚µ‚ê‚Ü‚¹‚ñ‚ªAƒ|ƒCƒ“ƒ^‚Æ”z—ñ‚ɂ‚¢‚ÄŽ¿–₳‚¹‚ĉº‚³‚¢B
int[] a;
int* p1 = a;
‚͂킩‚é‚̂ł·‚ªA
int* p2, p3;
p2 = a;
*p3 = a;
‚̈Ⴂ‚ª‚¢‚܂ЂƂ‚͂Á‚«‚è—‰ð‚Å‚«‚Ü‚¹‚ñB
‚Ü‚½AŽŸ‚̂悤‚É‚µ‚½ŽžAƒ|ƒCƒ“ƒ^‚͂ǂ±‚̃AƒhƒŒƒX‚ðŽw‚·‚Ì‚©‘z‘œ‚ª‚‚«‚Ü‚¹‚ñd
p2 = &a;
*p3 = &a;
‚æ‚낵‚ŒäŽw“ì‚̂قǂ¨Šè‚¢‚¢‚½‚µ‚Ü‚·B
ŽŸƒy[ƒWÅVƒŒƒX•\ަƒXƒŒƒbƒh‚ÌŒŸõ—ÞŽ—ƒXƒŒˆê——˜b‘è‚̃jƒ…[ƒX‚¨‚Ü‚©‚¹ƒŠƒXƒg¥ƒIƒvƒVƒ‡ƒ“‚ð•\ަ‰É‚‚Ԃµ2ch
4059“ú‘O‚ÉXV/255 KB
’S“–:undef