y‰SŽÒнŒ}zC/C++Ž ..
23:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 02:05:55
CLI SDK MFC‚Ì3Ží—Þ‚ª‚ ‚é‚炵‚¢‚¯‚Ç
CLI‚Í.NET‚Æ‚¢‚¤‚Ì‚ª‚í‚©‚Á‚½
‚ ‚Ƃ̓ñ‚‚ª‚æ‚‚í‚©‚ç‚È‚¢
24:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 02:20:47
>>23
WindowsŒü‚¯‚ÌŠJ”‚ð‚µ‚½‚¢‚Æ‚¢‚¤‚±‚Æ‚¾‚Ë?
MFC‚Í‰ß‹Ž‚Ìˆâ•¨‚Ȃ̂ŖY‚ê‚Ä‚¢‚¢BCLI‚͋؂ªˆ«‚¢‚̂ŖY‚ê‚Ä‚¢‚¢
(.NET‚ðŽg‚¤‚È‚çC#‚ðŽg‚¦‚΂¢‚¢)B‚Ȃ̂ÅAC++‚È‚ç Windows SDK
(Win32 API‚Æ‚©ŒÄ‚΂ê‚é)‚ª–³“‚ÆŽv‚¤B
25:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 02:49:46
>>24
‚Ç‚à
SDK‚àVC++2008EE‚à‚»‚ꂼ‚ê–³—¿‚̂𗎂Ƃ¹‚é‚ñ‚Å‚·‚æ‚Ë?
‚»‚ê‚Æ‚»‚Ì3‚‚̒†‚ň—‘¬“x‚ð‡”Ô‚Å•\‚·‚Ƃǂ¤‚È‚è‚Ü‚·‚©?
26:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 11:53:02
new‚ð‚·‚é‚Æƒƒ‚ƒŠ‚ªŠm•Û‚³‚ê‚Ü‚·‚ª
ƒƒ‚ƒŠ‚ðŠm•Û‚·‚é‹@”\‚ÍŒ¾Œê‚Ì•¨‚Å‚·‚©A‚»‚ê‚Æ‚àOS‚Ì•¨‚È‚ñ‚Å‚·‚©H
27:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 12:00:39
>>21
ECC 6.2.1‚Å‚Í1‚ªÅ‚à‘‚A2‚Í1‚Ì2”{Š|‚©‚èA3‚Æ4‚Í10”{Š|‚©‚é
Å“K‰»‚ª•³‚¾‚È
VC9‚ÌꇂÍ2‚ª1‚Ì4–œ”{A3‚ª1‚Ì15–œ”{Š|‚©‚é
1‚Æ4‚ÍÅ“K‰»‚ÅÁ‚¦‚Äs‚‚Ì‚¾‚ÆŽv‚¤
URLØÝ¸(codepad.org)
(Windowsê—p)
28:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 12:04:15
OS‚Ì‚à‚̂ł·
29:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 13:03:16
>>26
ŽÀۂɉ½‚ªƒƒ‚ƒŠ‚ðŠm•Û‚µ‚Ä‚¢‚é‚©iŽÀ‘•j‚Æ‚¢‚¤“_‚Å‚ÍOS‚Ì‹@”\‚Å‚ ‚é‚©‚à‚µ‚ê‚È‚¢B
‚Å‚àA‚Ç‚±‚Å“®ì‚ª’è‚ß‚ç‚ê‚Ä‚¢‚é‚©iƒCƒ“ƒ^[ƒtƒF[ƒXj‚Æ‚¢‚¤“_‚ł͌¾Œê‚Ì‹@”\‚ÆŒ¾‚¦‚éB
ƒvƒƒOƒ‰ƒ}‚©‚猩‚½new‚Ì“®ì‚ÍOS‚ª–³‚¢ŠÂ‹«‚Å‚à“¯‚¶‚ɂȂéB
30:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 14:58:55
‚±‚ÌŒ¾Œê‚Í‚¿‚å‚Á‚ƃ~ƒX‚Á‚½‚çOS–\‘–‚µ‚Ä
Ä‹N“®‚µ‚È‚¢‚Æ‚¢‚¯‚È‚‚È‚Á‚½‚è‚·‚é‚Ì?
31:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 15:03:25
>>30
¡ŽžA‚܂Ƃà‚ÈOSã‚ł͂»‚ñ‚ÈŒ¾Œê‚͂Ȃ¢B
–Þ‚àAŽÀ‘•‚³‚ê‚Ä‚¢‚éOS‚É‚æ‚Á‚Ă͓–‘R‚»‚¤‚È‚éê‡‚à‚ ‚邪B
32:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 15:17:40
‚Ђǂ¢‚Æ‚«‚É‚Í”š”‚·‚é‚©‚ç‹C‚ð‚‚¯‚ë
33:26
10/03/12 16:15:13
>>29
‚ ‚肪‚Æ‚¤
34:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 19:49:37
>>32
ƒ~ƒTƒCƒ‹‚ÉÚ‚¹‚é“z‚¶‚á‚È‚¢‚Í‚¸‚³
35:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 19:57:49
‚æ‚‚í‚©‚ñ‚È‚¢‚ñ‚¾‚¯‚Ç
‚à‚µƒ|ƒCƒ“ƒ^‚ÌŽg‚¢•û‚ªŠÔˆá‚Á‚½ê‡
ƒ\ƒtƒg‚¾‚¯‚ª–\‘–‚µ‚ÄI—¹‚·‚ê‚΂Ȃñ‚Æ‚à‚È‚¢‚Ì?
OS‚Ƀ_ƒ[ƒW‚ª‹y‚Ô‚±‚Ƃ͂Ȃ¢?
36:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 20:02:36
‰^‚ªˆ«‚¢‚Æ”š”‚·‚é‚Á‚Ä‚¢‚Á‚Ä‚ñ‚¾‚ë
37:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 21:01:47
‘g‚Ýž‚Ý•|‚¢‘g‚Ýž‚Ý•|‚¢
38:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 21:03:29
>>35
‚Ü‚¸‚ ‚肦‚È‚¢‚¾‚낤‚¯‚Ç
ň«‚Ìꇂɂ̓Rƒ“ƒsƒ…[ƒ^‚łł«‚邱‚ƂȂç‚È‚ñ‚Å‚à‹N‚±‚肤‚é
HDD‚ªƒtƒH[ƒ}ƒbƒg‚³‚ꂽ‚è
ƒEƒCƒ‹ƒX‚ð‚΂çŽT‚¢‚½‚è
’p‚¸‚©‚µ‚¢ƒtƒ@ƒCƒ‹‚ª—¬o‚µ‚½‚è‚Ë
39:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 21:33:46
ˆÓ}“I‚Ɉµ‚¢‚ðŠÔˆá‚¦‚邯ƒRƒ“ƒsƒ…[ƒ^ƒEƒBƒ‹ƒX‚ƌĂ΂ê‚é‚à‚Ì‚ªo—ˆã‚ª‚é‚킯‚¾
40:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 21:50:57
>>30
DOS‚âWin3.1‚Ì‚±‚ë‚Í‚»‚¤‚¾‚Á‚½‚ÈB
¡‚̓AƒvƒŠ‚ª—Ž‚¿‚邾‚¯‚Å‚·‚ÞB
41:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 22:02:27
windows95‚Ì ‚͈ê”ʕیìˆá”½‚Åςނ悤‚ɂȂÁ‚Ä‚½‚ñ‚¾‚Á‚¯
‚»‚ê‚Å‚à‰½“x‚©Â‰æ–Êo‚µ‚½‚ÆŽv‚¤‚¯‚Ç‚ ‚ê‚͈ê‘̂Ȃñ‚¾‚Á‚½‚ñ‚¾‚낤
42:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 22:12:03
95‚ÍŠ®‘S‚¶‚á‚È‚¢‚¯‚Ç‚»‚±‚»‚±ƒvƒƒeƒNƒg‚ÍŠ|‚©‚Á‚Ä‚éB‚¯‚ǂ܂ ‚æ‚—Ž‚¿‚½B
43:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/12 23:33:38
Ì‚ÍCŒ¾Œê‚Í•|‚‚ÄŽg‚¦‚È‚©‚Á‚½‚¯‚Ç
¡‚͈ÀS‚µ‚ÄŽg‚¦‚é‚ñ‚Å‚·‚Ë
VC++‚Í‚¶‚߂悤‚ÆŽv‚¢‚Ü‚·
44:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/13 18:23:46
namespace ns
{
static const hoge HOGE;
}
const hoge ns::Hoge = hoge();
’蔂Ƃµ‚ẴOƒ[ƒoƒ‹•Ï”‚ðcpp‚¶‚á‚È‚‚ăwƒbƒ_‚¾‚¯‚Å’è‹`‚µ‚½‚¢‚ñ‚¾‚¯‚ǂł«‚Ü‚·‚©H
45:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/13 18:36:45
ˆ—ŒnˆË‘¶‚È‚ç__declspec(selectany)‚Æ‚©__attribute__ ((selectany))‚Æ‚©
46:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/13 19:24:48
>>44
namespace ns
{
@ struct Hoge;
@ template<bool Dummy = true>
@ struct HogeHeaderOnlyConstants { static Hoge const HOGE; };
@ struct Hoge : HogeHeaderOnlyConstants<> {};
@ template<bool Dummy>
@ Hoge const HogeHeaderOnlyConstants::HOGE = Hoge();
}
URLØÝ¸(d.hatena.ne.jp)
URLØÝ¸(d.hatena.ne.jp)
47:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/13 20:21:34
‚È‚é‚Ù‚Ç[thx
48:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/14 13:18:04
*.h‚Æ*.cpp‚ª1‘Î1‚Å‚àextern‚Á‚ÄŽg‚í‚È‚¢‚ƃ_ƒ‚È‚ñ‚Å‚·‚©H
extern‚Ì“®‚«‚ª‚¢‚Ü‚¢‚¿‚í‚©‚ç‚È‚¢
49:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/14 13:34:31
extern‚Ç‚±‚©‚É‚ ‚é‚â‚‚ðŽg‚¤‚ºIŽÀÛ‚Ç‚±‚É‚ ‚é‚©‚ÍƒŠƒ“ƒJ‚Ü‚©‚¹
50:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/14 13:44:01
Šg’£‚·‚é—\’肪—L‚é‚È‚çextern
–³‚¢‚Ȃ疳–¼–¼‘O‹óŠÔ‚©static
51:49
10/03/14 14:01:47
>>49
>extern‚Ç‚±‚©‚É‚ ‚é‚â‚‚ðŽg‚¤‚ºI
E*.h‚É1‚‚¾‚¯•Ï”‚ð錾‚·‚é
E2‚‚Ì*.cpp‚©‚ç*.h‚É錾‚µ‚½•Ï”‚ðŽg‚¤
‚Á‚Ä‚±‚Æ‚ª‚Å‚«‚é‚킯‚Å‚·‚©H
>>50
>Šg’£‚·‚é—\’肪—L‚é‚È‚çextern
‚±‚±‚ÌŠg’£‚ÍA*.h‚Æ*.cpp‚ª1‘În‚ɂȂ邱‚Ɖ”\«‚ª‚ ‚é‚Á‚ĈӖ¡‚Å‚·‚æ‚Ë
52:51
10/03/14 14:02:29
–¼‘OŠÔˆá‚¦‚Ü‚µ‚½
>>51‚Í48‚Å‚·
53:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/14 14:09:54
>>51
‚»‚¤
hoge.cpp
int g_val;//ŽÀ‘̂̓RƒŒ
hoge.h
extern int g_val;
Žg‚¤l
foo.cpp extern int g_val‚·‚é‚©hoge.h‚ðƒCƒ“ƒNƒ‹[ƒh
hage.cpp ˆÈ‰º“¯—l
54:48
10/03/14 14:19:47
>>53
‚»‚¤‚ÆŒ¾‚í‚ê‚Ä‚àA>>49‚Ȃ̂©>>50‚©•ª‚©‚ç‚È‚¢‚ñ‚Å‚·‚¯‚Ç...
E1‚‚Ì*.h‚ð2‚‚Ì*.cpp‚Å‹¤—L‚µ‚Ä‚¢‚é
E‚µ‚©‚µ2‚‚à*.h‚ɕϔ‚ð2‚‘‚‚Ì‚ª(l‚¦‚é‚Ì‚ª)–Ê“|‚¢
E‚»‚ê‚¶‚áA*.h‚É1‚‚¾‚¯•Ï”‚ð錾‚µ‚ÄA‚ ‚½‚©‚à2‚Â錾‚µ‚½‚悤‚µ‚悤
‚Á‚Ă̂ªextern‚Å‚·‚Ë
55:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/14 14:26:46
‚Æ‚è‚ ‚¦‚¸éŒ¾‚Æ’è‹`‚̈ႢA–|–ó’PˆÊ‚⃊ƒ“ƒP[ƒW‚ɂ‚¢‚Ä’²‚ׂĂ‚¾‚³‚¢
56:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/14 20:27:08
URLØÝ¸(wisdom.sakura.ne.jp)
‚̈ê”Ô‰º‚ÌmainŠÖ”
Neko obj(::obj);
‚Ì ::obj ‚͉½‚ðŽw‚·‚ñ‚Å‚·‚©H
57:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/14 20:29:45
ƒOƒ[ƒoƒ‹•Ï”‚ÌobjBƒNƒ‰ƒX‚Ì錾‚Æ“¯Žž‚É’è‹`‚µ‚Ä‚é‚â‚Â
58:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/14 20:53:19
>>57
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·
59:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/14 20:59:28
friend‚Á‚ÄŽg‚¢“¹‚ ‚é‚ÌH
ƒlƒXƒgƒNƒ‰ƒX‚Æ‚©staticƒƒ“ƒoŠÖ”‚‚©‚¦‚΂悂ËH
60:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/14 21:01:41
>>59
ƒeƒ“ƒvƒŒ[ƒg‚ª—‚ñ‚Å‚‚邯‚»‚¤ŠÈ’P‚¶‚á‚È‚¢‚ñ‚¾‚æB
Effective C++‚®‚ç‚¢‰ÅB
61:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/14 23:32:10
iostream‚âstdio‚Ȃǂ̕W€“I‚ȃ‰ƒCƒuƒ‰ƒŠ‚Í
/usr/include‚̉º‚Ƀwƒbƒ_ƒtƒ@ƒCƒ‹‚ª•Û‘¶‚³‚ê‚Ä‚¢‚Ü‚·
•W€“I‚ȃ‰ƒCƒuƒ‰ƒŠ‚ÌŽÀ‘Ԃ͂ǂ±‚É‚ ‚é‚̂ł·‚©
OS or ƒRƒ“ƒpƒCƒ‰?
62:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/14 23:33:33
‘å’ïƒtƒ@ƒCƒ‹ƒVƒXƒeƒ€ã‚̂ǂ±‚©‚Å‚·
63:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 00:00:06
>>61
‚à‚̂ɂæ‚éB
/usr/include ‚Á‚Ä‚±‚Æ‚ÍUNIXŒn‚¾‚낤‚©‚çA‚½‚¢‚Ä‚¢OS•t‘®‚Å
/usr/lib ‚È‚ÇB
64:61
10/03/15 00:11:33
>>63
•’Ê‚Él‚¦‚Ă݂ê‚ÎA/usr/lib/ˆÈ‰º‚É‚ ‚è‚Ü‚·‚æ‚Ë
/usr/lib‚̓\ƒtƒg‚ÌŽÀ‘Ì‚ª“ü‚Á‚Ä‚¢‚é‚È`’ö“x‚ÌŽ–‚µ‚©Žv‚Á‚Ä‚¢‚Ü‚¹‚ñ‚Å‚µ‚½
/usr/lib‚Ì’†‚̃f[ƒ^‚Í*.so‚ª‘½‚¢‚킯‚Å‚·‚µ
‚í‚©‚è‚Ü‚µ‚½A‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·
65:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 02:10:20
>>61,64
‚à‚µ‚©‚µ‚ÄAŽÀ‘Ì‚Á‚ă‰ƒCƒuƒ‰ƒŠ‚Ì‚±‚Æ‚¶‚á‚È‚‚ă\[ƒX‚Ì‚±‚Æ‚¾‚Á‚½
‚è‚·‚é?
‚»‚ê‚à‚à‚¿‚ë‚ñŠÂ‹«ˆË‘¶‚¾‚¯‚Ç‚àB
66:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 12:09:33
Windows‚ł̘b‚Ȃ̂ł·‚ªA
std::locale loc = std::locale();
loc = std::locale(loc, "japanese", std::locale::ctype);
std::locale::global(loc);
‚Æ‚¢‚Á‚½‹Lq‚ðDLL‚Ì–`“ª‚É‘‚¢‚½ê‡A‚»‚ê‚ð“ǂݞ‚Þƒ\ƒtƒg‚⑼‚ÌDLL‚É‚à‰e‹¿‚Í‹y‚Ԃ̂łµ‚傤‚©H
67:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 13:12:48
hoge.h
extern void hoge();
hoge.c
void hoge(){“à—e}
‚È‚ñ‚ÅAhoge.c‚É‚Í#include "hoge.h"‚Æ‘‚©‚È‚‚Ä‚àƒVƒ“ƒ^ƒbƒNƒXƒGƒ‰[‚ɂȂç‚È‚¢‚ñ‚Å‚·‚©H
C++‚ŃNƒ‰ƒX‚ð’è‹`‚·‚鎞‚ÍA#include "hoge.h"‚Æ‘‚©‚È‚¢‚ƃVƒ“ƒ^ƒbƒNƒXƒGƒ‰[‚ɂȂé‚Ì‚É
68:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 13:16:19
„C++‚ŃNƒ‰ƒX‚ð’è‹`‚·‚鎞‚ÍA#include "hoge.h"‚Æ‘‚©‚È‚¢‚ƃVƒ“ƒ^ƒbƒNƒXƒGƒ‰[‚ɂȂé‚Ì‚É
‚È‚ç‚Ë[‚æ
69:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 13:21:41
>>67
‰½‚É‚à—‰ð‚µ‚Ä‚Ë‚¥‚ñ‚¾‚ÈB
#include‚ª‚¨‚Ü‚¶‚È‚¢‚Ì—Þ‚¾‚ÆŽv‚Á‚Ä‚¢‚éß‚ªB
‚¾‚ê‚©‚¨‚¹[‚Ä‚â‚ê
70:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 13:28:23
>>66
ŒÂX‚̃‰ƒ“ƒ^ƒCƒ€‚ÅŠÇ—‚µ‚Ä‚¢‚é‚̂œ¯‚¶ƒ‰ƒ“ƒ^ƒCƒ€‚ÉƒŠƒ“ƒN‚³‚ê‚Ä‚¢‚郂ƒWƒ…[ƒ‹ŠÔ‚ʼne‹¿‚ðŽó‚¯‚é
VC++2005‚Å“®“IƒŠƒ“ƒN‚Åì‚Á‚½‚Ȃ瓯‚¶ƒvƒƒZƒX‚ɓǂݞ‚Ü‚ê‚Ä‚éVC++2005‚Å“®“IƒŠƒ“ƒN‚µ‚Ä‚¢‚éDLL‚ª‰e‹¿‚ðŽó‚¯‚é
VC++6‚â2008‚Åì‚Á‚½‚à‚Ì‚â2005‚Å‚àÓIƒŠƒ“ƒN‚µ‚½‚à‚͕̂ʂ̃‰ƒ“ƒ^ƒCƒ€‚É‘®‚·‚é‚̂ʼne‹¿‚³‚ê‚È‚¢
71:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 13:28:54
// ŠÖ”hoge‚Ì錾
extern void hoge();
// ŠÖ”hoge‚Ì’è‹`
void hoge(){“à—e}
// ŠÖ”hoge‚ÌŽQÆ
hoge();
// ƒNƒ‰ƒXFoo‚Ì’è‹`
class Foo {
Foo() {}
static FOO() {}
};
// ƒNƒ‰ƒXFoo‚ÌŽQÆAƒCƒ“ƒXƒ^ƒ“ƒXfoo‚Ì’è‹`
Foo foo;
// ƒNƒ‰ƒXFoo‚ÌŽQÆ
Foo::FOO();
// ƒCƒ“ƒXƒ^ƒ“ƒXfoo‚ÌŽQÆ
func(foo);
72:67
10/03/15 13:33:57
>>71
thx
‚Å‚à‚³AC++‚ÌŽž‚Í#include "hoge.h"‚Á‚Ä‘‚©‚È‚¢‚Æ
ƒRƒ“ƒpƒCƒ‰—l‚ª“{‚Á‚Ä‚‚é‚ñ‚¾‚æ
73:69
10/03/15 13:42:44
>>72
‚»‚ê‚Í
> C++‚ÌŽž‚Í
‚Æ‚¢‚¤‚©A’P‚É "hoge.h" ‚É ƒNƒ‰ƒXFoo‚Ì’è‹` ‚ð‘‚¢‚Ä‚¢‚é‚Á‚Ä‚¾‚¯‚¶‚á‚È‚¢‚Ì‚©H
#include "hoge.h"
‚Ì #include ‚Á‚Ă̂ÍA"hoge.h" ‚ð‚»‚ÌꊂɎæ‚èž‚ßiƒRƒsƒy“I‚É‹@ŠB“I‚ÉŽæ‚èž‚ßj
‚Á‚ĈӖ¡‚¾‚©‚çA‚±‚ꂪ‚È‚¢‚Æ
"hoge.h" ‚É ƒNƒ‰ƒXFoo‚Ì’è‹` ‚ð‘‚¢‚Ä‚¢‚éꇂÍ
ƒNƒ‰ƒXFoo‚Ì’è‹` ‚ªŒ©‚‚©‚ç‚È‚¢‚ƃRƒ“ƒpƒCƒ‹ƒGƒ‰[‚ɂȂ邾‚낤‚¯‚ÇB
‚Å‚à#include "hoge.h"‚ð‚µ‚È‚‚Ä‚àƒ\[ƒXƒtƒ@ƒCƒ‹‚É‚à‚¤ˆê“x ƒNƒ‰ƒXFoo‚Ì’è‹` ‚ð
‘‚¯‚ΕʂÉ#include "hoge.h"‚µ‚È‚‚Ä‚àƒGƒ‰[‚ɂ͂Ȃç‚È‚¢B
ˆÓ–¡•ª‚©‚Á‚Ä‚‚ê‚éH
74:69
10/03/15 13:58:57
>"hoge.h" ‚É ƒNƒ‰ƒXFoo‚Ì’è‹` ‚ð‘‚¢‚Ä‚¢‚éꇂÍ
>ƒNƒ‰ƒXFoo‚Ì’è‹` ‚ªŒ©‚‚©‚ç‚È‚¢‚ƃRƒ“ƒpƒCƒ‹ƒGƒ‰[‚ɂȂ邾‚낤‚¯‚ÇB
ƒNƒ‰ƒX‚Ì’è‹`‚͂ǂ¤‚â‚Á‚ÄŒ©‚‚¯‚é‚ñ‚Å‚·‚©H
’m‚肽‚¢‚±‚Æ‚ÍA‚»‚±‚È‚ñ‚Å‚·
75:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 15:32:51
// hoge.c
class Hoge {
};
Hoge hoge;
76:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 18:35:13
‚悃‰ƒCƒuƒ‰ƒŠ‚Å\‘¢‘Ì‚ð
struct tagHOGE{}HOGE;
‚Ý‚½‚¢‚Étag‚È‚ñ‚¿‚á‚ç‚É‚·‚é‚͉̂½‚łł·‚©
77:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 18:44:00
>>76
еK‚Å‚·B
C/C++‚Å‚Ístruct tagHoge {...} hage;‚Æ‚µ‚½‚Æ‚«‚Éhage‚ÌŒ^‚Ístruct tagHoge‚ɂȂè‚Ü‚·B
C++‚Å‚ÍtagHoge‚̂悤‚Éstruct‚ðÈ—ª‚Å‚«‚Ü‚·‚ªAC‚Å‚ÍÈ—ª‚Å‚«‚Ü‚¹‚ñB
‚»‚̈×A‚µ‚΂µ‚ÎC‚Å‚Ítypedef struct tagHoge {...} Hoge;‚̂悤‚Étypedef‚·‚邱‚ƂɂȂè‚Ü‚·B
‚±‚̂Ƃ«Atypedef struct Hoge {...} Hoge;‚Æ‚·‚邯C++‚ł̓Gƒ‰[‚ɂȂè‚Ü‚·B
78:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 19:09:36
—¹‰ð‚µ‚Ü‚µ‚½
79:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 19:28:15
“¯‚¶‚É‚µ‚Ä‚àC/C++‹¤‚ɃGƒ‰[‚ɂȂç‚È‚¢
‚Ü‚ ‚»‚¤‚¢‚¤ƒRƒ“ƒpƒCƒ‰‚à‚ ‚é‚Ì‚©‚à‚µ‚ê‚È‚¢‚¯‚Ç
80:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 19:32:54
„typedef struct Hoge {...} Hoge;‚Æ‚·‚邯C++‚ł̓Gƒ‰[‚ɂȂè‚Ü‚·B
‚È‚ç‚ñ‚È‚ç‚ñ
JIS X3014 •‘C 7.1.3 ‚É‚à‘S‚“¯‚¶—ႪڂÁ‚Ä‚é
81:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 20:28:50
class Hoge{
private:
int Num;
double huga[Num];
public:
Hoge(int Num);
};
Hoge::Hoge(int Num){
this->Num = Num;
}
82:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 20:33:34
’†“r”¼’[‚¾‚Á‚½EEE
‚±‚¤‚¢‚Á‚½•—‚Éhuga‚̃TƒCƒY‚ð錾‚µ‚½‚¢‚̂ł·‚ªA‚±‚ê‚ł̓Rƒ“ƒpƒCƒ‹‚ª‚Å‚«‚Ü‚¹‚ñB‚Ç‚¤‚¢‚¤•—‚É‚©‚¢‚½‚ç‚¢‚¢‚Å‚µ‚傤‚©H
83:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 20:35:46
>>81
std::vector ‚ðŽg‚¤
84:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 20:51:36
class aaa
{
static const int bbb = 100; double ccc[bbb];
};
85:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/15 20:54:46
struct ar{double*const p;ar(size_t a):p(new double[a]){};~ar(){delete[] p;}double&operator[](size_t a){return *(p+a);}}*huge;
// ‚ð new delete‚ł‚©‚¤B
86:66
10/03/16 09:18:35
>>70
Ú‚µ‚à–¾‚µ‚Ä‚¢‚½‚¾‚«A‘å•ÏŽQl‚ɂȂè‚Ü‚µ‚½B
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½B
87:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/16 09:50:03
>>85
ƒRƒs[ƒRƒ“ƒXƒgƒ‰ƒNƒ^‚Æ‘ã“ü‰‰ŽZŽq‚Í‘‚±‚¤‚º
88:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/16 10:06:23
>>76
URLØÝ¸(blogs.msdn.com)
‚±‚ꂾ‚ÈB
•W€‰»‘O‚ÌC‚ł̓^ƒO–¼‚Ì–¼‘O‹óŠÔ‚ª•ª‚©‚ê‚Ä‚¢‚È‚©‚Á‚½‚±‚Æ‚ªŒ´ˆö‚ÅA
‚»‚ê‚ðŽó‚¯‚½ Windows ƒvƒƒOƒ‰ƒ~ƒ“ƒO‚É‚æ‚Á‚Ä‚³‚ç‚ÉL‚Ü‚Á‚½‚à‚Ì‚¾‚낤B
tag ‚È‚ç‚Ü‚¾‚µ‚à‰ºü‚ÅŽn‚ß‚é“z‚ª‘½‚‚Ä¢‚éB
URLØÝ¸(www.kijineko.co.jp)
89:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/16 10:10:47
>>80
ŽÀ‚͂܂¾ active issue ‚ɂȂÁ‚Ä‚½‚è‚·‚éB
URLØÝ¸(www.open-std.org)
90:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 01:33:03
JIS”ÅC++‚Å‚ÍOK‚¾‚ªISO”ÅC++‚Å‚ÍNGc‚Æ‚¢‚¤‚±‚Æ‚©H
91:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
10/03/17 02:06:50
>>90
‚ñ‚È‚±‚½[‚È‚¢BISO‚àJIS‚à“à—e‚ÍŠî–{“I‚É“¯‚¶B
Œ³X‚Ì‹KŠi‚̈Ó}‚Æ‚µ‚Ă͓¯‚¶–¼‘O‚àŽg‚¦‚邿‚¤‚É‚µ‚½‚©‚Á‚½‚悤‚¾‚¯‚ÇA
Œµ–§‚ɉðŽß‚µ‚Ä‚¢‚‚ƂȂɂâ‚ç–µ‚‚Ì‚ ‚éó‘ԂɂȂÁ‚Ä‚¢‚邿‚¤‚¾‚Æ‚¢‚¤˜bB
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
‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·
ŽŸƒy[ƒWÅVƒŒƒX•\ަƒXƒŒƒbƒh‚ÌŒŸõ—ÞŽ—ƒXƒŒˆê——˜b‘è‚̃jƒ…[ƒX‚¨‚Ü‚©‚¹ƒŠƒXƒg¥ƒIƒvƒVƒ‡ƒ“‚ð•\ަ‰É‚‚Ԃµ2ch
4060“ú‘O‚ÉXV/255 KB
’S“–:undef