ySҜ}zC/C++ ..
80:ftHgÌŒ³µ³ñ
08/02/07 03:40:14
>>77
¶á œÅG[ÅéÌH
newµœÜÜI¹µÄµÜÁÄàÅ«OSªG[ƵÄðúµÄêéÁÄ·¢œ¯Ç
81:ftHgÌŒ³µ³ñ
08/02/07 05:19:50
>>80
G[ªo鯩®IÉdelete·éð¯ñÉlŠéÈæ
»à»à\[XoµÄÈ¢ÌÉImÈŠªo¹éÆvŠéH
Â[©©ªÅlŠÄŠo·©oœñÈçAêæAKvÅáÀÌXÍt¢œñŸ©ç
82:ftHgÌŒ³µ³ñ
08/02/07 05:55:50
ImȶáÈ¢ÈçfŸû²ÅÈæAŽçíµ¢B
83:ftHgÌŒ³µ³ñ
08/02/07 06:04:00
>>81
»ÌlŠðšÜŠªÛ赜©ç·¢Ä«ÄéñŸë
84:ftHgÌŒ³µ³ñ
08/02/07 06:42:38
vector ÁÄ嫳ªÂÏÌ͞ŷªAvectorÌzñÌ|C^ìÁĀܢÌŵ倩H
œÆŠÎÈºÌæ€É double Ì vector ÌzñðìÁœÆµÜ·B
std::vector<double> a[3][4];
±Ì vector zñÌvf²ÆÉá€ñŸ¯ push_back() ÅlðüêœÆµÜ·B
»µÄ vector Ì|C^[ðøÉÆéȺÌÖª è
void hogehoge (std::vector<double>* arg )o
@for(std::vector<double>::const_iterator it=arg[0].begin();
@@it!=arg[0].end();
@@it++){
@@@std::cout<<"arg[1] "
@}
}
»ÌøÉ a[1] ðÈºÌæ€ÉüêœêÍ
hogehoge(a[1]);
arg[0]Æ¢€ÌÍ a[1][0] ð¿áñƳµÄêéÌŵ倩H
85:ftHgÌŒ³µ³ñ
08/02/07 06:44:38
Û赜ñ¶áÈÄA 調Èp^[É×ÁÄ¢»€Ÿ©çwEµœŸ¯ŸëB
86:ftHgÌŒ³µ³ñ
08/02/07 07:16:58
>>84
R³·
87:ftHgÌŒ³µ³ñ
08/02/07 07:18:13
>>80
newµœÜÜI¹ÁÄAmain/WinMain ·çI¹µœãÌbŸº
88:84
08/02/07 07:20:43
>>86
èªÆ€I
ÁıÆÍ sizeof(vector<double> ÍvfÌÉ©©íçžlÍÏíçÈ¢ÁÄ©B
svcB
89:ftHgÌŒ³µ³ñ
08/02/07 07:23:40
>>88
Ó¡ªª©çñB
|C^É [0] ð¯œç
»ÌAhXÉ éIuWFNgðw·B
ÉßÄVvÈŠB
90:84
08/02/07 07:30:44
ð®IÉìÁÄé©çReiÌvfªŠÄà|C^ͯ¶É éÁÄ©
91:ftHgÌŒ³µ³ñ
08/02/07 07:31:39
vectorÌgÍnewÅmÛµœÖÌ|C^(ÆÇîñ)Ÿ©çÈ
92:ftHgÌŒ³µ³ñ
08/02/07 07:35:21
>>88
vf©ÌÍ®ImÛ³êÄ¢é©çÈ
93:ftHgÌŒ³µ³ñ
08/02/07 07:35:52
¢¢ŠB
94:ftHgÌŒ³µ³ñ
08/02/07 09:42:52
vectorÌÌvfð\[gµœ¢ÌÅ·ªA»ÌÆ«A©ªÅè`µœÖÉæÁÄ
\[gµœ¢Å·BÇ€·êÎæ¢Å·©H
95:ftHgÌŒ³µ³ñ
08/02/07 09:45:44
vectorÍA±ÌæÉi[³êéizñƯ¶æ€ÉµŠéj©çÊÉ\[gµœç¢¢B
96:ftHgÌŒ³µ³ñ
08/02/07 10:00:45
>>94
std::sort
97:ftHgÌŒ³µ³ñ
08/02/07 14:14:42
X^eBbNNÆ©V[hNÆ©»Ì œè̱ƪ×Å«éTCg èܹñŵ倩H
98:ftHgÌŒ³µ³ñ
08/02/07 14:26:10
>>96
sort(vec.begin(), vec.end(), func);
Æ«œ¢AfuncÍÇ€¢€É¯Îæ¢Åµå€©H
class func : public binary_function
{
bool operator()(const string &a, const string &b){}
};
Æ¢ÄÝœÌÅ·ªARpCàÊèܹñB
Ç€©šè¢µÜ·B
99:ftHgÌŒ³µ³ñ
08/02/07 14:29:08
binary_functionÅ®®ê
100:ftHgÌŒ³µ³ñ
08/02/07 14:30:57
>>98
µ§ÉŸ€Æstrict weak orderingðœ·æ€É
±ÆÉÈéªA
struct func : public binary_function
{
bool operator()(const string &a, const string &b) {
@@@@return a < b; //«Åž
}
};
sort( vec.begin(), vec.end(), func() );
Æ©ÅÇ€H
101:ftHgÌŒ³µ³ñ
08/02/07 14:31:04
¿âÅ·B
VC6.0Å©OÌCuðÜÆßœStatic Link LibraryðìÁĢܷB
»ÌCuðÀÛÉŒÌvWFNgÅg€ÛANÌÆ±ëÅÈºÌæ€ÉçT«ÜµœB
E·ÅÉ LIBCMTD.lib(crt0dat.obj) Åè`³êĢܷ
±êðMªÉAåÊÉNxªÅܵœB
²×œÆ±ë
URLØÝž(m--takahashi.com)
libÌûÍVOXbhÅBeXgvWFNgÌÙ€Í}`XbhÅRpCµÄ¢é̪âèÌæ€ÅµœB
Œû}`XbhɵœÆ±ëc
E"libcmt.lib" ÍŒÌײÌÞרÌgpÆ£µÄ¢Ü·
¡xͱ꟯ÅܵœB
²×œÆ±ë
URLØÝž(m--takahashi.com)
libªReleaseRpCÅAeXgvWFNgªDebugRpCÈ̪«¢æ€ÅµœB
libðReleaseÅÆDebugÅÌŒûðÂèAKØÉN·éæ€ÉµœÆ±ëAG[ª«ŠÜµœB
±±Å^âÈÌÅ·ªA¡ãÌÄp«ðlŠéÆlibÍ
EVOXbhDebugÅ
EVOXbhReleaseÅ
E}`XbhDebugÅ
E}`XbhReleaseÅ
ð»êŒêpӵĚ©È¯êÎÈçÈ¢Ìŵ倩H
êÊIÉpÓ³êÄ¢é"winmm.lib"ÈÇÍAœàlŠžÉstdafx.hÉ
#pragma comment(lib, "winmm.lib")
ƢĚ¯ÎAVOXbhŸë€ª}`XbhŸë€ªADebugŸë€ªReleaseŸë€ªKØÉN³êܵœixâG[Åܹñj
©ìÌlib௶ç¢CyÉgŠéæ€É·éÉÍAÇÌæ€ÉµœçÇ¢Ìŵ倩H
102:ftHgÌŒ³µ³ñ
08/02/07 14:32:02
šÁÆA
>>99ð©Ä
struct func : public binary_function<string, string, bool>
{
bool operator()(const string &a, const string &b) {
@@@@return a < b; //«Åž
}
};
©B
103:ftHgÌŒ³µ³ñ
08/02/07 14:38:33
const ªLÁœûª¢¢ÈB
104:ftHgÌŒ³µ³ñ
08/02/07 14:39:36
n[hfBXNÖÌ«ÝÅAÖÌLbV
ð©®ÅsÁÄêéœß èÜ·©
105:ftHgÌŒ³µ³ñ
08/02/07 14:52:29
šÁÆA
>>103ð©Ä
struct func : public binary_function<string, string, bool>
{
bool operator()(const string &a, const string &b) const {
@@@@return a < b; //«Åž
}
};
©BšêÍconstðæYêéB
106:ftHgÌŒ³µ³ñ
08/02/07 14:53:31
>>101
EDebugÅÍöJµ¿á¢¯Ü¹ñ
E»sVCÍVOXbhÅ^Cª èܹñ
>>104
»ñÈuœßvÈñÄ éàñÅ·©B
107:ftHgÌŒ³µ³ñ
08/02/07 14:59:57
>>106
MFCÌfobOÅDLLÌÄzzªÖ~ÈŸ¯Å
©OCuÌfobOÅzzÍÖ~¶áËŠŸëB
108:ftHgÌŒ³µ³ñ
08/02/07 15:05:41
>>106
©OÅLbV
pӵܵœæ
109:ftHgÌŒ³µ³ñ
08/02/07 15:16:46
>>106
101Å·
šÔ èªÆ€²Ž¢Ü·B
EDebugÅÍöJµ¿á¢¯Ü¹ñ
m©É»à»àDebugÅÍpӵĚKvȢŷæË
œŸAd3d9.lib àAfobOÅ絫 d3d9d.libÆ¢€à̪ èÜ·B
൩µÄuDebug/ReleaseÅ©®IÉNðÏŠÄ¢évÈñÄ¢€ÌÍÌÏzÅ
d3d9d.libÍgíêĢȢÌŵ倩H
E»sVCÍVOXbhÅ^Cª èܹñ
±êÍÂÜèA¢ÌÉzz³êÄélibÍ}`XbhÅÅìçêÄšèA
}`XbhÅlibÍAVOXbhÈvWFNgÅpµÄàÁÉâèªN«È¢Æ¢€±ÆÅµå€©H
iÀÛµÄݜƱëAVOvWFNg©ç}`LibðÄÑoµÄàG[ÆÈèܹñŵœj
»à»àu_beginthreadðg€œßÉÍ}`XbhÅÉ·éKvª évÆ¢€F¯µ©àÁÄšçžA
u}`XbhÅɵȢ±ÆÉæé_vÍmçÈ¢ÌÅ·
110:ftHgÌŒ³µ³ñ
08/02/07 15:21:59
>>109
ÜžAfobOÅÌlibª éâÂÍpragmaÅØèÖŠÄéÍžB
©ªÌìÁœlibªšÉæÁÄÏíéÌÍA»¢ÂÌÅfobOÅâ
MTÅÌlibðÄñÅé©çB
»€¢€Ì𯜯êÎX^eBbNNµÄµÜ€Æ¢¢©àB
111:ftHgÌŒ³µ³ñ
08/02/07 16:08:21
>>109Å·
iÀÛµÄݜƱëAVOvWFNg©ç}`LibðÄÑoµÄàG[ÆÈèܹñŵœj
±êÅ·ªAšá¢ÅµœB
âÍèu}`XbhÅÌlibt@CvðuVOXbhÅÌvWFNgv©çN·éÆA
LINK : warning LNK4098: defaultlib "LIBCMTD" ÍŒÌײÌÞרÌgpÆ£µÄ¢Ü·; /NODEFAULTLIB:library ðgpµÄŸ³¢
ÆÈÁĵܢܵœB
iãÌÍADebug}`ÅLibðDebugVOÅÌvWFNgÉNµœêÌxÅ·j
>>110
ÈéÙÇBht@C œèÅA#ifdef _DEBUG âçFXƵĢéÌŵ倩B
»€¢€Ì𯜯êÎX^eBbNNµÄµÜ€Æ¢¢©àB
¿åÁƱÌÓ¡¢ªí©çÈ¢ÌÅ·ªAÚµ³ŠÄ¢œŸ¯Ü·Åµå€©
DZ©ÌTCgÖÌNÅà\¢Ü¹ñ
112:ftHgÌŒ³µ³ñ
08/02/07 16:26:09
³ŠÄŸ³¢B
Ⱥ̮ÅAshinªUÉÈéÌÍȺŵ倩H
unsigned int a =10, b = 20;
char shin = ((a - b) < (b - a));
(a - b) = -10, (b - a) = 10 ÈÌÅAshin = ^ÉÈ鿀Év€ÌÅ·ªBBB
113:ftHgÌŒ³µ³ñ
08/02/07 16:29:04
unsigned¯mÌZÌÊÍunsigned
114:ftHgÌŒ³µ³ñ
08/02/07 16:32:12
int^Ïi-32768`32767jÉ-40000Æ©üêæ€ÆµœçÇ€ÈéÆv€H
115:ftHgÌŒ³µ³ñ
08/02/07 16:32:16
èªÆ€²Ž¢Ü·
116:ftHgÌŒ³µ³ñ
08/02/07 16:37:11
>>101
RpCIvV/ZlÁÄVC6ÉÈ¢H
±êÍobjt@CÉLIBCMTD.LIBÆ©CRTÖÌQÆð
ßÜÈ¢æ€É·éRpCIvVB
1ÂÌlibÅSÄðdŠéæ€ÉàÈéB
¯Ç»ÀIÉÍÅK»EfobOIvVÌL³ÅA
ÈÆàRelease/DebugÌ2ípӷ׫ŸÆv€¯ÇB
117:ftHgÌŒ³µ³ñ
08/02/07 16:48:16
>116
ZlIvVðgÁœÆ±ëADebugvWFNg©çReleaseLibðgÁÄàxªÅÈÈèܵœB
èªÆ€²Ž¢Ü·B
iÅ@Zl@ª@[bgEACŸÆvÁĬµÜµœ@[bgEGÅ·Ëj
µ©µAStaticLibraryÌìèûðÚµðàµÄ¢éTCgÁÄSR©œèܹñËcB
Lib€ÆµÄÍAReleaseŸ¯pӵĚ¯Î¢¢Æv€ÌÅ·ªÇ€Åµå€©H
LibªoOÁĢȢƌèµÄp·é̪OñÅ·¯Ç
118:ftHgÌŒ³µ³ñ
08/02/07 16:51:38
>>101
winmm.libÁÄwinmm.dllÌPÈéC|[gCuÅÍH
VCÌ^CðNµÈ¢CuÈ绀¢ÁœâèÍRN«È¢
119:ftHgÌŒ³µ³ñ
08/02/07 16:52:47
ÊÉReleaseŸ¯ÅࢢÆv€B
DLLŸÆfobOÅàñÈñÄb·©È¢µB
120:ftHgÌŒ³µ³ñ
08/02/07 17:02:19
>>118
AÈéÙÇB»€¢ŠÎlibÉÍà€ÐÆÂuDLLÆN·éœßÌC|[gCuvÆ¢€ðÚª èܵœËB
winmmÍ»Á¿Å·©B
ig£qÏŠê΢¢ÌÉÈcj
>>119
¹ðµÜµœB
ALL
åÏQlÉÈèܵœB
èªÆ€²Ž¢ÜµœI
121:ftHgÌŒ³µ³ñ
08/02/07 17:19:25
fobOÅÌlibðñ·éÌÍlibðfobOµÄà皀Ƣ€±Æ¶áÈÄA
»êðgÁœvOàLibÌ\[Xðg[XÅ«éæ€ÉŸæ
122:ftHgÌŒ³µ³ñ
08/02/07 17:23:39
>121
NÖÌÔŸHH
123:ftHgÌŒ³µ³ñ
08/02/07 17:26:13
«˶ÌXÍ·×ÄX[µÄÜ·
124:ftHgÌŒ³µ³ñ
08/02/07 17:36:05
X^Càà¿ëñX[Å·
125:ftHgÌŒ³µ³ñ
08/02/07 18:04:43
template<typename T>
void foo() {
T x = T();
}
intâint*ÈÇÌî{^ÉεÄev[gÅÌftHgú»
ðÂ\É·éœßÉãÌæ€È\Lª³êÄšèint*|C^àn¹Ü·B
iNULL|C^Éú»³êÄ¢éj
µ©µAȺÌ|C^Ìú»Í³êĢȢÌŵ倩H
int* p = int*(); //RpCNGŵœ
int i = int(); //OK
126:ftHgÌŒ³µ³ñ
08/02/07 18:05:37
ISO 9660t@CðQÆÅ«éDLLÆ© èܹñ©
127:ftHgÌŒ³µ³ñ
08/02/07 18:28:40
>>125
»êÍūȢ¯ÇA±êÈçÅ«éB
typedef int* pint;
template<typename T>
struct identity
{
@ typedef T type;
};
int* p1 = pint();
int* p2 = identity<int*>::type();
128:ftHgÌŒ³µ³ñ
08/02/07 19:05:06
ªðú³êÄé©Ç€©mF·éû@ÁÄÈñ© é©ÈH
void a( void* p ) {
if( rand() %2 ) delete p;
}
void main () {
char*pc = new char[100];
a(pc);
// pcªðú³êÄÈ©Áœçðú
if( soreppoino( pc ) ) delete pc;
}
Ýœ¢ÈB
129:ftHgÌŒ³µ³ñ
08/02/07 19:08:34
·ÜñëÁœEEEÁı±Åࢢ̩ȱê
130:ftHgÌŒ³µ³ñ
08/02/07 19:13:57
>>127
typedefÅÂ\Æ¢€±ÆÍPÈéV^bNXÌâèŸÆ¢€
±ÆÅ·©ËBŸÆµÄàfoo<int*>()ÍÊIÉ
int*()ÆÈé©çNGÌæ€ÈCàµÜ·ªËB
131:ftHgÌŒ³µ³ñ
08/02/07 19:31:29
XgÇÌ
XgÌACeðdeleteµœÆ«A©®IÉ®·éXg©çÍžêé@\ÍA
stlÅvectorÆ©listÆ©gÁÄ®XgðoŠÄAXg©çÍž·æèA
OãÌ|C^ðÁœA©ÈANXÌÙ€ª¬xIɢŷ©H
Æ¢€©AdeleteµœÆ«A©®IÉ®·éXg©çOêétemplateÝœ¢ÈàÌ
STLÝœ¢ÈWCuÉ èÜ·©H
132:ftHgÌŒ³µ³ñ
08/02/07 19:34:12
>>130
PÉV^bNXÌâèÁÛ¢æ
postfix-expression:
simple-type-specifier ( expression-listopt )
(ª)
simple-type-specifier:
::opt nested-name-specifieropt type-name
::opt nested-name-specifier template template-id
char
wchar_t
bool
short
int
(ª)
type-name:
class-name
enum-name
typedef-name
class-name:
identifier
template-id
intâNXŒâtypedefŒÍOKŸ¯Çint*Í\¶ÉvµÈ¢ÁÄ¢€EE
133:ftHgÌŒ³µ³ñ
08/02/07 20:03:47
>>128
»€¢€NXÅàpӵȢÀèA èܹñB
Â[©A»ñÈ¢ðÈÇíªÍ èŠÜ¹ñB
>>131
tÉAXgÉ éIuWFNgðremove·éÆ«ÉdeleteµÄÍ?
134:ftHgÌŒ³µ³ñ
08/02/07 20:22:12
1904NÌúIíÌÛÉAVA³³ïÍS³ïð °Äú{ÉV±ð
º·æ€É_ÉFèð³³°œBÇÈÉàV±Í~èžAVAͯœB
20NãAú{ÅÖåkЪ¶BVAÌšwÒJsbc@ͱÌÀ©ç
u_Ííêíê©ç9õNÈàÉ¢évÆ_𺵜Ƣ€B
135:ftHgÌŒ³µ³ñ
08/02/07 20:47:14
@šA𩵢AEEE
^'Ü`RA TNãÌ¢EÉsÁœç`
[SNªÈ©ÁœAEEE
RA¯@m @
@ `[°' @ @ @@ ÁÜ`R @ @@@@@@@@^'ÜÜRA
@@,-°°-€ @ @ @.||PP @ @ @ @ @ @@i @ @ «@ ÜR
@/@ «@@j @@@||@@@ ÈQÈ @@@ @ _ ª®@@ @j
.i. @ « @@j@@@||.@ @i MnLGj
@R€QQ,m @ @@||@ Q(Â÷÷Æ)Q_
@@ @ @@@@@ ^||'''''| @O@ | @@ |'iÜj
@@@@@@@@^@ @@'\\\`@P _
@@ @@@@@`'
136:ftHgÌŒ³µ³ñ
08/02/07 20:51:06
>>132
ÈéÙÇBÜ ev[gÌÆ«ÌœßÉpÓ³êÄé
K¥ÈÌÅA»ÌÆ«Ÿ¯pµÜ·B
èªÆ€²Ž¢ÜµœB
ƱëÅAÝȳñÍŽ¶ÌKiðÁÄéñÅ·©H
€ÆSß©ÁœÌÅÄÆÄàŠÜ¹ñB
137:ftHgÌŒ³µ³ñ
08/02/07 21:14:24
JISÈçICÅÇßé¶áñB柯ÇB
138:ftHgÌŒ³µ³ñ
08/02/07 21:17:09
Visual C++ 6.0ðgÁÄ¢éñÅ·¯Ç
C++ÌvOðÀs·éÆ
c:\program files\microsoft visual studio\vc98\include\new(16) : error C2143: \¶Ž×° : ';' ª '<class-head>' ÌOÉKvÅ·B
c:\program files\microsoft visual studio\vc98\include\new(16) : error C2501: '_STD_BEGIN' : ¯ÊŒð韷éÌÉA^ªwè³êĢܹñB
c:\program files\microsoft visual studio\vc98\include\new(16) : fatal error C1004: \ú¹Ê EOF ªo³êܵœB
ÆoĵܢܷB
ÇñÈvOÅà±ÌG[ªoĵܢÀsūܹñc
ÇÌæ€É·êαÌG[ÍÈÈèÜ·©H
139:ftHgÌŒ³µ³ñ
08/02/07 21:18:22
>>137
»±ÅhtgÅ·æB
á±»KiÆá€¯ÇA
âhtgŸÆÜ Ü »KiÉߢ©ç\ªQlÉÍÈéB
140:ftHgÌŒ³µ³ñ
08/02/07 21:25:29
>>138
KvÈà̪üÁÄÈ¢©üêéÝèɵĢȢB
_STD_BEGINÁÄÌÍSTLªg€éŸŸ©çSTLªgŠÈ¢ñŸë€B
ivectorÅàgÁÄéñ©ËHj
ŽÍSTLgÁÄÈ¢ñÅãÍ®[®éæ¶©ŒÌlÉÜ©·í
141:ftHgÌŒ³µ³ñ
08/02/07 21:37:29
>>137
>>139
êõūȢ©çsÖÅ·æËBÜ ³¿ÈÌÅœÜɩܷªB
³®Åð³¿ÅzzµÄ~µ¢Å·ËB
142:ftHgÌŒ³µ³ñ
08/02/07 22:03:32
>>138
Visual C++ 2008 ExpressÆ©ŸÆÇ€ÈéH
143:ftHgÌŒ³µ³ñ
08/02/07 22:50:19
>>105
(xÈèܵœª)
èªÆ€²Ž¢ÜµœB
144:ftHgÌŒ³µ³ñ
08/02/07 23:20:56
>>128
WÅÍpÓ³êĢȢÌÅAlÉæÁÄÍðúµœç»ÌÌæðw
µÄ¢œ|C^Ïð (* ©ªÅ *) NULL ɵĚæ€ÉµÄ¢
élà¢éB
ÇÁ¿©ÁÄŸ€ÆAoOÁÄœÌñdðú¯Æ©AÏÈÌæðó³
È¢æ€ÉÆŸ€häôŸªB
void a( void** p ) {
if( rand() %2 ) delete *p;
}
void main () {
char*pc = new char[100];
a(&pc);
// pcªðú³êÄÈ©Áœçðú
if( soreppoino( pc ) ) delete pc;
}
145:ftHgÌŒ³µ³ñ
08/02/08 01:48:10
m۵ĢȢÌÉdelete·éÆoOéñÅ·ªÎ@ èÜ·©
146:ftHgÌŒ³µ³ñ
08/02/08 01:50:44
PÆÅÍ©íÈ¢ÅRXgN^AfXgN^àÅgŠÎÀS©È
147:ftHgÌŒ³µ³ñ
08/02/08 01:59:05
void a( void** p ) {
@@if( rand() %2 ){
@@@@delete *p;
@@@@*p = NULL;@@@// deleteãÍNULLðüêÄš
@@}
}
void main () {
@@char*pc = NULL;@@@@// |C^ÍÊNULLÅú»µÄš
@@if( rand() %2 )
@@@@new char[100];
@@a(&pc);
@@delete pc;@@@@@@// pcªNULLÈçœàµÈ¢
}
148:ftHgÌŒ³µ³ñ
08/02/08 01:59:41
while (cin) {
...
}
Æ¢€É¢ÄÈñÅ·ªAcinÁÄÅÍÆè ŠžtrueÉÈéÌÅ·©H
·éÆA¢ÂfalseÉÈéñÅ·©H
G[tOªœÁÄêÎfalseA»êÈOÍtrueÉÈéÌ©ÈH
cinÅœ©f[^ðÇÝñŸãŸ¯trueÉÈéÌ©ÆvÁÄܵœB
149:ftHgÌŒ³µ³ñ
08/02/08 02:00:03
> new char[100];
pc = new char[100] ŵœB
150:ftHgÌŒ³µ³ñ
08/02/08 02:04:09
X^[g
«
WüÍ©çf[^ªcinÉs
«
cinªtrueÉÈé
«
while(cin)ª]¿³êé
Æ¢€©ñ¶Èñ¶áËH
151:ftHgÌŒ³µ³ñ
08/02/08 02:12:09
>>147
C++ÅÍÄp|C^ÖÌ|C^ÁÄ@ŸÁœÁ¯B
152:ftHgÌŒ³µ³ñ
08/02/08 03:44:28
âèÈ¢B
153:ftHgÌŒ³µ³ñ
08/02/08 03:55:20
coutÆfstream(KÈt@CÉεÄI[vÏÝÌàÌ)ÆÌ»êŒêÉAÙÚ¯¶ðÌÅ·ªA
1ÂÌÖÉÜÆßœ¢Æv€ÌÅ·ªAÇ€·ê΢¢Åµå€©H
void print((^ªª©çÈ¢) stream) {
stream << "hogehoge" << endl;
@...
}
±ñÈÌàlŠÄÝœÌÅ·ªARpCÅ«žA_ŵœB
template<class T>
void print(char *filename) {
T outStream;
if (filename) outStream.open(filename);
outStream << "hogehoge" << endl;
...
}
Ç€©æëµšè¢µÜ·B
154:ftHgÌŒ³µ³ñ
08/02/08 07:25:40
>>138
new wb_ðCN[h·éOÉ
new ð}NÅu«·ŠÄÈ¢©H
155:ftHgÌŒ³µ³ñ
08/02/08 10:49:42
>>153
std::ostream
156:ftHgÌŒ³µ³ñ
08/02/08 11:53:19
TNGfB^Ì\[XR[hðßÄ¢œÌÅ·ªARgÅæí©çÈ¢\Lª èÜ·B
@param ÈÇÍÈñÆÈzªÂÌÅ·ªAu//!<vâu/*! */vÍœðÓ}µÄ¢éÌŵ倩B
ÇÈœ©³ŠÄŸ³¢B
157:ftHgÌŒ³µ³ñ
08/02/08 11:57:37
>>156
Â[Doxygen]
158:ftHgÌŒ³µ³ñ
08/02/08 11:59:11
ܳÉA»êÅ·ËB
èªÆ€²Ž¢ÜµœB
159:ftHgÌŒ³µ³ñ
08/02/08 13:23:53
áOÌg¢ûª¢Ü¢¿ª©èܹñ
áOð°œç»ÌÌÅðµœûªÇ¢Ì©
»êÆàðû@ðg€€É°ÁÏȵɵĵ܀̩
áOðÇ€¢€`Åthrow·é̪¢¢Ì©
ÈñÆ¢€©ŽoIÉÍÝɢƢ€©ÈñÆ¢€©
160:ftHgÌŒ³µ³ñ
08/02/08 13:25:33
³pš
161:ftHgÌŒ³µ³ñ
08/02/08 13:32:44
QÆðÔ·ÆIuWFNgªÌÄçêœÆ«É
AÁÄ«œàÌàü±€É?
162:ftHgÌŒ³µ³ñ
08/02/08 13:34:05
>>159
©ÖÌÅJoÅ«éÈçcatchµÄ·êÎæ¢
»€ÅÈ¢ÈçÄÑoµ³ÉÜ©¹é
ÊÌG[Ư¶æ€ÈàñŸ
©ªÅÅ«éÈçµÄAūȢÈçÄÑoµ³ÉG[R[hÈèÈñÈèðreturn·éŸë€
G[R[hÌreturnªáOÌthrowÉÏí韯
163:ftHgÌŒ³µ³ñ
08/02/08 13:34:37
>>161
ú{êÅ
164:ftHgÌŒ³µ³ñ
08/02/08 13:48:01
>>162
»€¢€Ž¶ÅÇ¢ñÅ·©
CyÉgŠéÈçgÁÄÝæ€©ÈEEE
165:ftHgÌŒ³µ³ñ
08/02/08 14:03:21
Æ é3íÞÌvªíðj^[·évOÈñÅ·ª
Äé¯Ç᱿ª€œßª3Â éÆµÜ·
±Ìê
NXª¯ðµÄ¢Æ«
ví̀ʻÂNXðîêÆµÄA»êŒêÌ@\ðàÂh¶NXðìé©
@\Ì€ÊðàÂNXðîêÆµÄA»êŒêÌvíÉ í¹Äh¶NXðìé©
ǿ窡ãvíªŠéÂ\«ðÁ¡µœÆ«Aæ¢Ývŵ倩
166:ftHgÌŒ³µ³ñ
08/02/08 14:07:41
>>165
»Ìvªí[JÉí¹é̪êÔB
é[JÍ^@íÌ@\ðüϵÂÂV@\ðìé©àµêÈ¢µA
é[JÍ^@íÌ@\ðcµÂÂV@\ðìé©àµêÈ¢B
ÈñıÆÍeàpAg¢Õ¢æ€ÉìêÎ?
167:138
08/02/08 15:05:04
ÔMxÈÁÄ·¢Ü¹ñI
>>140
STLÍgÁÄÈÄà±ÌG[ÈñÅ·æc
Hello WorldÝœ¢È¶ðoͷ韯ÌvOÅà
ÀsūȢŷB
>>142
Visual C++ 2008 Express EditionÅÀsµœçūܵœI
èªÆ€²Ž¢Ü·B
>>154
}NàgÁÄÈ¢ÌÅá€Æv€ÌÅ·ªc
Visual C++ 6.0ðg¢µêÄ¢éÌÅ
ǀɩµÄÀs³¹œ¢ÌÅ·ª¥¥¥
168:ftHgÌŒ³µ³ñ
08/02/08 15:22:22
class Fruit;
class Apple : Fruit;
std::vector<Fruit> fruits;ðìéÆ
ÛNXðCX^X»Å«Ü¹ñB
ÆŸíêéÅ·BÇ€·éÅ·©H
169:ftHgÌŒ³µ³ñ
08/02/08 15:23:31
Fruit ª»€¢€ÂèÉÈÁÄéñ¶áÈ¢ÌH
170:ftHgÌŒ³µ³ñ
08/02/08 15:24:38
>>168
class FruitðïÌ»µÄŸ³¢B
171:ftHgÌŒ³µ³ñ
08/02/08 15:36:19
std::vector<Fruit*> fruits;
172:ftHgÌŒ³µ³ñ
08/02/08 16:14:45
RpCÉBCCðgÁÄlvZðµÄ¢éÌÅ·ªA
µÎçvOÀsµÄ¢éÆAEXP: OVERFLOW ERRORÆoÜ·B
±êÍAexpÖÉüêœlªexpÖ̵ŠélidoubleÌÍÍjæèà嫢Ɵ€±ÆÅµå€©H
173:ftHgÌŒ³µ³ñ
08/02/08 16:23:52
>>167
ŽAðû@mÁÄéñŸªc
174:ftHgÌŒ³µ³ñ
08/02/08 16:25:09
vevtorÉvcÌ_com_ptrÍüèÜ·©H
175:ftHgÌŒ³µ³ñ
08/02/08 16:59:55
Rs[ú»àRs[ãüàÅ«é©çâèȢ͞B
176:ftHgÌŒ³µ³ñ
08/02/08 22:22:37
·¢Ü¹ñ¿åÁÆš·«µœ¢ñÅ·ªA
#include <iostream>
using namespace std;
int main(){
char ss[80] = "±êͶñÅ·";
cout << ss[0] << ss[1];
return 0;
}
ÁÄâÁÄAcoutÅu±vÁÄ\гêÈ¢ÌÍAÇ€¢€üŵ倩HH
177:ftHgÌŒ³µ³ñ
08/02/08 22:24:09
UTF-8 ÈçRoCgKvŸªA»€¢€í¯ÅÍÈÄH
178:ftHgÌŒ³µ³ñ
08/02/08 22:34:20
>>176
ÐåÁƵÄÈñ©ÏȶªÅœèµÄé©H
179:176
08/02/08 22:34:23
®ÍA»€ŸÁœñÅ·ËEE2oCgÅ¢¢ñŸÆvÁÄܵœŸ
cout << ss[0] << ss[1] << ss[2];
ÆâÁœç¿áñÆ\гêܵœB
èªÆ€²Ž¢Üµœm(_ _)m
180:ftHgÌŒ³µ³ñ
08/02/08 22:40:31
¿ÈÝÉWindowsãŸÆ>>176ÌR[hÅu±vÍ¿áñÆoœB(bcc32 / gcc@cygwin)
181:ftHgÌŒ³µ³ñ
08/02/08 22:44:58
»êÍšOª\[XðSJISÅ¢Ä韯
182:ftHgÌŒ³µ³ñ
08/02/08 22:55:36
>>175
ÇàB
183:ftHgÌŒ³µ³ñ
08/02/08 23:42:34
UTF-8 ŸÆSÄRoCgÁÄó¶áȢ̪Ê|ÈÆ±ëŸæÈB
184:ftHgÌŒ³µ³ñ
08/02/08 23:43:11
>>181
UTF-16 ÅàoéªÈB
185:ftHgÌŒ³µ³ñ
08/02/09 00:17:28
ŒÅ·¢Ä«Ü·
186:ftHgÌŒ³µ³ñ
08/02/09 00:20:35
fatal error LNK1104:RpCÍAt@Cd3d9.libðJ¯Ü¹ñ
ÆÅĵܢrhūܹñ
è®ÅJÉd3d9.libðÝèµÜµœª³Åµœ
Ç€·êÎæ¢Ì©
187:ftHgÌŒ³µ³ñ
08/02/09 00:33:08
t@CÍ éÌH
188:ftHgÌŒ³µ³ñ
08/02/09 00:40:25
pathÌÝè͵œ©H
189:ftHgÌŒ³µ³ñ
08/02/09 01:58:17
More Exceptional C++ªÍ¢œñŸª
¢«ÈèÅÌR[hªRpCūˊ
êCÉâéCžµœBâÁÏâ{ͱñÈ
àñ©ËŠB
190:ftHgÌŒ³µ³ñ
08/02/09 02:00:08
¿ÈÝÉR
VC++2008 g++ 4.0 ÅàsÂ
#include <iostream>
#include <fstream>
using namespace std;
int main(int argc, char* argv[])
{
(argc > 2
@@@? ofstream(argv[2], ios::out | ios::binary)
@@@: cout)
<<
@(argc > 1
@@@@? ifstream(argv[1], ios::in | ios::binary)
@@@@: cin )
.rdbuf();
@return 0;
}
191:ftHgÌŒ³µ³ñ
08/02/09 02:06:46
SâèÈ¢¯ÇBܳ©ÆÍv€ªA>190ÁÄ2oCgóüêœÜÜūԢĢéšn³ñ?
192:ftHgÌŒ³µ³ñ
08/02/09 02:15:25
RpCūȢƫÍG[bZ[Wð±€
ÈñÄÌÍhèXÅàOê³êÄ鿀ÈCª·éB
193:ftHgÌŒ³µ³ñ
08/02/09 02:17:41
gcc 4 ÅÊçÈ¢ÈB
Ü œèOŸÈB
EÓlÌ ofstream ƶÓlÌ ostreamicoutj ŸÆ
ÐûªEÓlÈÌÅEÓlÉLXgµÄ^ðµŠæ€Æ·éªA
±ÌQ¶áÇ€âÁÄà^ðµŠçêÈ¢B
194:ftHgÌŒ³µ³ñ
08/02/09 02:20:34
VC ŸÆEÓlÌ ofstream ð
e|IuWFNgðì¬µÄ ofstream& ÉLXgµÄµÜŠé©çig£@\j
RpCÊé©àµêñB
195:ftHgÌŒ³µ³ñ
08/02/09 04:37:38
œÔñA±±Åµ©·¯È¢Ì©ÈÆv¢«Ý³¹ÄŸ³¢I
File1.cppÅè`EgpµÄ¢é¡zñ double a[10][5] ðŒÌ
t@C(File2.cpp)Åà€LµÄgpµœ¢Æ«ÁÄ
iFile2.cppj
void CGridDlg::OnGdraw()@//Ågpµœ¢ÖÅ·
{
@@extern double a[10][5];
@EEEEEEEE
}
Æè`·êÎgpÅ«éàÌÈÌŵ倩BPzñ(a[10])ÌͯlÌ
û@ÅgpÅ«œÌÅ·ªB¡zñÉÈéÆãLÅÍNG[
iLNK2001jªÅĵܢܷB«ÍubU{{ileb_COx[XjÅ·B
ŽSÒÅ·BbÌ{ð©Ä|C^ÈèAexternÈèªÖWµ»€©ÈÆvÁœ
ÌÅ·ªAȩȩ¢¢µª©ŠÈįðØèœ¢æÅ·B
196:ftHgÌŒ³µ³ñ
08/02/09 07:49:02
>>191
±±É©â·\éœßÉSpɵÄéñæ
>>192
VC++2008ÅÌG[bZ[WŸªprivateo[ÉANZXµæ€ÆµÄé
çµ¢B
error C2248: 'std::basic_ios<_Elem,_Traits>::basic_ios' : private o
(NX 'std::basic_ios<_Elem,_Traits>' Å音êÄ¢é) ÉANZXÅ
«Ü¹ñB
>>193
ostreamicoutjÌÓ¡ªª©çÈ¢ñÅ·ªBRZq A ? B : C
ÌBªrvalueÅCªlvalueŸ©çCi±±ÅÍcoutjðEÓlÉµæ€Æ
·éÆ¢€±Æ©ÈH
>>194
ÌÌKiÈèRpCÅÍOKŸÁœÌ©àµêñÅ·B
197:ftHgÌŒ³µ³ñ
08/02/09 08:25:12
>>191
198:ftHgÌŒ³µ³ñ
08/02/09 08:27:28
óor^u <-> /**/
Ìu·XNvgðó]
199:ftHgÌŒ³µ³ñ
08/02/09 08:28:26
>>197
ÌÌKiÈèRpCÅÍOKŸÁœÌ©àµêñÅ·B
200:ftHgÌŒ³µ³ñ
08/02/09 08:55:15
>>196
¶ÓlÌ ostream ÌlÅ é cout ÁÄÓ¡ËB
G[ÌRÍ»êÅâèÈ¢B
201:ftHgÌŒ³µ³ñ
08/02/09 09:50:51
>>195
externÅ€L³¹éÌÍš©ßµÈ¢B
ŒÌÖÅzñðQƳ¹éœßÉÍA|C^ðn¹Îæ¢B
ÖàÌ[JÏÖÌ|C^ÍA»ÌÖÀsɵ©LøÉÈçÈ¢©çAêIɵ©QÆE€LūȢB
202:ftHgÌŒ³µ³ñ
08/02/09 09:59:52
>>195
CGridDlg Ì private oÏɵÄA
a ÌæŸÖðpÓ·êB
class CGridDlg {
public:
typedef double Hoge[5];
Hoge* GetA() { return m_a; }
const Hoge* GetA() const { return m_a; }
private:
Hoge m_a[10];
};
Hoge* a = grid_dlg.GetA();
a[0][0] = 1;
203:ftHgÌŒ³µ³ñ
08/02/09 10:37:35
LÅàí©éðÁœñÅ·ªA
ŽSÒÌŽÉͳÁÏèí©èܹñB
œ©í©èâ·¢{ÈÇ Áœç³ŠÄŸ³¢Bšè¢µÜ·B
204:ftHgÌŒ³µ³ñ
08/02/09 10:39:09
>>203
¿ÈÝÉCŸêÅ·Bæëµšè¢µÜ·B
205:ftHgÌŒ³µ³ñ
08/02/09 10:41:09
>>203
»Ì{Ū©èɢƩ¶áÈÄ
³ÁÏ誩çȢƢ€ÌÅ êγŷA «çßÄŸ³¢
»êæèœª©èâ·¢Æ]»ÌàÌà èÜ·ªAå·Í èܹñ
»êÆà«ªpÓūȢƩ»€¢€±ÆÅ·©H
206:ftHgÌŒ³µ³ñ
08/02/09 11:54:33
>>203
»Ì{ÍÇñŸÍÈ¢ªATvðÛ¿Û¿èÅü͵ÄÀsµÄÝȳêB
èÅü͵ķ̪ÌSB
t®CDÆ©_E[hðNbNµÄIíè¶áâÎÉðūȢB
207:ftHgÌŒ³µ³ñ
08/02/09 13:26:37
>>200
ÈéÙÇB3ZqÍÐûªrvalueÌÆ«ÍÊàrvalueÉÈ鯢€
±ÆÅ·ËB
µœÆ±ëÅÍAstatic_cast<ostream>(cout)âostream obj(cout);
ÍūȢݜ¢ÅªA»à»àostreamIuWFNgͶ¬Å«È¢à
ÌÈñÅ·©HŸÆµœçostreamIuWFNgÅ écoutÍÇÌæ€É
쬳êœÌÅ·©ËH
208:ftHgÌŒ³µ³ñ
08/02/09 13:37:27
Rs[µæ€Æ·éÆ©éG[ŸÈ
209:ftHgÌŒ³µ³ñ
08/02/09 13:55:53
>>207
ostreamâistreamÉÍAøðæéRXgN^ª éB
coutâcinÍ»êðgÁÄìçêéñŸë€B
210:ftHgÌŒ³µ³ñ
08/02/09 14:04:36
>>207
static_cast<ostream&>(cout)@Æ©@ostream@out(cout.rdbuf());@ÈçÅ«é
211:ftHgÌŒ³µ³ñ
08/02/09 15:06:27
>>209
>>210
Xg[ÆXg[obt@ÉÍã¢(Xg[obt@̯ú)
Æ¢(Xg[obt@Ì€L)ÁÄ̪ éÝœ¢Å·ËB
š»çAR\[foCXÉÖAt¯çêœXg[obt@
(áŠÎcdevÆ¢€ŒOŸÁœÆµÄ)Æ¢€ÌªVXeÉͶݵ
Ä¢ÄcoutÍAostream cout(&cdev); Æ¢€Ó€Éè`³êÄé
ñŵå€ËBXg[IuWFNgðRs[ūȢRÍ
³§ÀÉXg[obt@ðRs[µœè(ÌQï)A
ÃÙÌ€¿É€LÅ«œèµœçâèªN±é©ç©ÈÆv¢ÜµœB
212:ftHgÌŒ³µ³ñ
08/02/09 15:07:47
Xg[IuWFNgðRs[ūȢRÍ
³§ÀÉXg[obt@ðRs[µœè(ÌQï)A
ÃÙÌ€¿É€LÅ«œèµœçâèªN±é©ç©ÈÆv¢ÜµœB
Í>>208³ñÖÌXŵœB
213:ftHgÌŒ³µ³ñ
08/02/09 15:24:28
coutðRs[·éÆ¢€ÌÍÓ¡ªí©çñAÁÄÌà é©àË
R\[©Ìª2ÂÉŠéí¯¶á éÜ¢µ
214:ftHgÌŒ³µ³ñ
08/02/09 15:33:48
>>198
©ÁÄâÁÄŸ³¢
œÚØÝž(unixÂ:55Ô)
215:ftHgÌŒ³µ³ñ
08/02/09 16:41:15
>>205
«ªpÓūȢŷB
»êÅà «çßœûª¢¢Å·©H
216:ftHgÌŒ³µ³ñ
08/02/09 16:49:08
>>203
»ÌÜÜÌÓ¡ªª©çÈ¢¯ÇAHDVà³k³êœfÞÅ·æB
H.264ÆÍÙÈéû®ÅB
WikipediaÚØÝž
217:ftHgÌŒ³µ³ñ
08/02/09 16:52:43
AÈñ©·°[ëÁÄœBžçorz
218:ftHgÌŒ³µ³ñ
08/02/09 16:58:08
«ªpÓūȢÁÂ[Ó¡ªí©çñB
Macµ©ÁÄÈ¢ÌÉWin32OñÌüåÁ¿áÁœÁıƩËH
219:203
08/02/09 17:03:06
·¢Ü¹ñBAtHÅc
©ªÍ¡AæñÍÅ~ÜÁÄÜ·B
ÆŸ€ÌàA¢«ÈèuÅÍA\[Xð©ÄÝܵå€vÆÈèA
uJÂ«ÉæÁÄRpCÌèªÙÈèÜ·v
ª±Ì_Åí©èܹñB
©ªÉÍü¢ÄȢ̩Ècorz
220:ftHgÌŒ³µ³ñ
08/02/09 17:05:32
void hoge(const char* name){ char* piyo = name + (sizeof(char) * 5); }
±ñÈæ€È±ÆÍÈñÅoÈ¢ñŵ倩H
¶ñnameÌ5¶ÚÌ|C^i&(name[4])jðpiyoÉi[µœ¢Å·
error C2440: '=' : 'const char *' ©ç 'char *' ÉϷūܹñB
±Ìæ€ÈG[ªoéÌÅ·ª³Œ±±ÅÈñűÌG[ªÅéñŸHÆ¢ÁœŽ¶Å·
221:ftHgÌŒ³µ³ñ
08/02/09 17:12:11
const@char@*piyo@
222:ftHgÌŒ³µ³ñ
08/02/09 17:13:49
>>220
«·ŠÂ\È|C^(char *)É«·Šs\È|C^(const char *)ðãüµæ€ÆµÄ¢é©çÅ·B
void hoge(const char * name)
{
char const * piyo = & name[4];
}
±€¯Îâè èܹñB
223:ftHgÌŒ³µ³ñ
08/02/09 17:14:36
char *Ìconst«ðµÄé©çBüꜢÈçpiyoàconst char *É·éB
hogeàŶñðM蜢Èçøðchar *É·é׫B
øÍÏŠçêžAÇ€µÄàchar *ªKvÈçconst_cast<char *>iÅãÌèij
224:220
08/02/09 17:17:20
>>221-223
èªÆ€²Ž¢Ü·B
ælŠœç¢¶éKvÍÈ¢ÌÅpiyo€ðconstɵܵœ
225:ftHgÌŒ³µ³ñ
08/02/09 17:18:01
>>219
Æè ŠžAÈÉ©ö«ÍÁÄ¢éÌ©H
226:ftHgÌŒ³µ³ñ
08/02/09 17:18:34
name + (sizeof(char) * 5)
ÞÍåävŸë€©B
227:ftHgÌŒ³µ³ñ
08/02/09 17:19:23
>>225
Í¢B
WN{XÍö·éÌÅåävÅ·B
228:ftHgÌŒ³µ³ñ
08/02/09 17:22:30
ŽÌ`[ÌoàæTöµœºB
229:ftHgÌŒ³µ³ñ
08/02/09 17:23:57
¿åÁÆÒÄA»êÍuöv¶áȢ̩?
230:ftHgÌŒ³µ³ñ
08/02/09 17:24:28
>>226
»êÁÄâè éÌ©HpbÆ©í©çñ
231:ftHgÌŒ³µ³ñ
08/02/09 17:26:23
>>230
char Š鯫ÉÍâèÉÍÈçÈ¢ª int Æ©ÉÈéÆc
232:ftHgÌŒ³µ³ñ
08/02/09 17:26:24
>>230
>220Éͱ€¢Ä éB
¶ñnameÌ5¶ÚÌ|C^i&(name[4])jðpiyoÉi[µœ¢Å·
233:ftHgÌŒ³µ³ñ
08/02/09 17:26:31
>>229
»€ŸÈBöÍ«¿ÅAöͻ۟©çÈB
234:ftHgÌŒ³µ³ñ
08/02/09 17:27:47
>>231
¢âAŸ¢¶å€ÔŸë
¿áñÆintÌ嫳ÉεÄêéæ
235:ftHgÌŒ³µ³ñ
08/02/09 17:27:55
>>230
|C^Í©®IÉ»ÌTCYªiÞ©çAsizeofð|¯éKvÍÈ¢AÆ©©ÈH
236:ftHgÌŒ³µ³ñ
08/02/09 17:28:25
>>234
²ßñÔኜ
237:ftHgÌŒ³µ³ñ
08/02/09 17:28:46
ConceptGCCÅA190ÌR[hÌofstreamÆifstreamð
ostream&&Æifstream&&Éstatic_castµœàÌðHí¹œçÇ€È驯µÄÝœªA
G[ŸÁœorzBEÓlQÆÍCuÜÅyñŢȩÁœB
238:ftHgÌŒ³µ³ñ
08/02/09 17:29:06
sizeof(*name)É·é׫ƩB
239:ftHgÌŒ³µ³ñ
08/02/09 17:29:46
>>238
¢ðÅ·©?
240:ftHgÌŒ³µ³ñ
08/02/09 17:30:00
>>219
KÉ c üå@SÒÆ©Å®®êΫÌüêû©çàŸµÄ鯱ª«ÁƩ©éæ
241:203
08/02/09 17:46:21
>>225
>>240
·¢Ü¹ñBà€êx²×ÈšµÄÝÜ·B
242:ftHgÌŒ³µ³ñ
08/02/09 17:47:29
>>238-239
&5[name] Å¢¢ŸëB
243:ftHgÌŒ³µ³ñ
08/02/09 17:49:48
>>242
>232
244:ftHgÌŒ³µ³ñ
08/02/09 17:58:03
char ch='a';
cout <<(int) ch << '\n'; // 97
int dt=97;
cout << (char)dt<< '\n'; // 'a'
ÆÅ«éÌÉA
wchar_t ch1=' ';
cout <<(int) ch1 << '\n'; // 33340
int dt1=33440;
cout << (wchar_t)dt1<< '\n'; // 0x82a0
Æ' 'ªÅÈ¢ÅA82a0ªoéÌÍȺŷ©H
i82a0Í33440Ì16iÅ·j
245:ftHgÌŒ³µ³ñ
08/02/09 18:03:03
class test{
@char* str;
@int len;
public:
@test(const char* str);
};
test::test(const char* str0){
@len = strlen(str0);
@str = new char[len+1];
}
Æ·éÆ
(msvcr80d.dll) Ånh³êĢȢáOª¶µÜµœ: 0xC0000005: ê 0xccccccc0 ðÇÝÝÉANZXᜪ¶µÜµœB
±ñÈæ€ÈG[ªÅÜ·A¢ë¢ëÆRgAEgµÄµÄÝÄ¢œÌÅ·ª
str = new char[len+1];ªÅG[ªoĢ鿀ŷA±êð
str = new char[256];Ìæ€É·éÆG[ÍÅÈ¢ÌÅ·ªAèÅȯêÎÈçȢƩȢŷæËH
êÌÈñÅŵ倩H
246:ftHgÌŒ³µ³ñ
08/02/09 18:10:38
¢ÄȢƱëÌoOð©Â¯ëÁÄŸ€bH
247:ftHgÌŒ³µ³ñ
08/02/09 18:10:39
>>245
»€¢€ÍæžAstr0Ì·³ªÀÛɢŸÁœÌ©ðmFµÜµå€B
248:ftHgÌŒ³µ³ñ
08/02/09 18:10:53
>>245
»ÌªÍâèÈ¢æ€É©ŠéB
256É·éÆG[ªoȢƱë©çÝÄA
DZ©Åobt@I[o[t[µÄéñ¶áÈ¢H
249:245
08/02/09 18:12:34
>>246-247
ŠÁÆ·ÝܹñAstr0ÉÍÅè̶ðüê鿀ɵĵĢܷ
16¶Ì¶ñŵÄARXgN^àÅlenÌ·³ð\г¹éÆ«¿ñÆ16¶ÉÈÁĢܷB
ÜœA¯¶RXgN^àÅstr0ð\г¹éÆ«¿ñÆnµœ16¶Ì¶ñª\гêÜ·
250:245
08/02/09 18:15:42
mainàÉ
char* buff = "abcdefghijklmnop";
test hoge(buff);
±êŸ¯Å·
]vȪðSÄRgAEgµÄéÌűêÅR[hÍSÄÅ·
251:ftHgÌŒ³µ³ñ
08/02/09 18:16:08
ÀsªðݹëB
test test1("abcdabcdabcdabcd");
ÈçÜÁœâèȢ͞B
252:251
08/02/09 18:22:16
²ßñAá€È
253:ftHgÌŒ³µ³ñ
08/02/09 18:23:47
>>245
»±ðÏŠœç®©çÆ¢ÁÄAoOÌo³ª»±ŸÆÍÀçÈ¢
ºñºñÖWȳ»€ÈÊÌêà^€Kvª é
254:ftHgÌŒ³µ³ñ
08/02/09 18:24:42
strÉÍANZXµÈ¢ÌH
testàÅstrcpyµÈÄ¢¢Ì©H
Èɪâ蜢ñŸH
255:245
08/02/09 18:36:41
>>253
ñеœªÈOðRgAEgµÄ¢éÌÅ·ªG[ªoéóÔÅ·
>>254
»ÌªªŽö©Æà^ÁÄRgAEg³¹Ä¢éÌÅ·ªG[ªoéóÔÅ·
test::test(const char* str0){
@len = strlen(str0);
@str = new char[len+1];
@strcpy_s(str, len+1, str0);
@printf("%s\n", str0);
@printf("%d\n", len);
@printf("%s\n", str);
}
±ñÈïɵܷÆ
abcdefghijklmnop
16
abcdefghijklmnop
Æ\гêÜ·ªµÁ©èG[ªÅÜ·
256:ftHgÌŒ³µ³ñ
08/02/09 18:44:34
mainÁıÆÍAMFCÆ©ÍgÁÄÈ¢í¯©cc
rhµœçŒéÆ©Ÿ€¿ÍÈ¢æÈH
257:ftHgÌŒ³µ³ñ
08/02/09 18:44:45
>>255
]vÈincludeàRgAEgB
³çÉG[ª³ÈéÜÅRgAEgB
VKvWFNgÆì¬µÄAKvÈR[hŸ¯\èt¯Ä®©µÄÝéB
258:ftHgÌŒ³µ³ñ
08/02/09 18:44:52
š©µ¢È A¿áñÆ®ŒæB
259:ftHgÌŒ³µ³ñ
08/02/09 18:46:07
class test{
@char* str;
@int len;
public:
@test(const char* str);
};
test::test(const char* str0){
@len = strlen(str0);
@str = new char[len+1];
}
int main(int, char**)
{
char* buff = "abcdefghijklmnop";
test hoge(buff);
return 0;
}
±êÅAG[ÉÈéÁÄH
260:ftHgÌŒ³µ³ñ
08/02/09 18:53:05
ÈÆà€¿ÅͿȢB
VC++ 2005 Express Edition SP1 + Win2KSP4
261:ftHgÌŒ³µ³ñ
08/02/09 18:59:59
>>255
ÇÌsÅáO¶µÄé©Ë«~ߜ̩H
262:244
08/02/09 19:00:55
񨇅
263:ftHgÌŒ³µ³ñ
08/02/09 19:02:03
>>262
wchar_tªœŸÌtypedefÌ«ÅÍ»€ÈéB
VC++6ƩB
264:244
08/02/09 19:05:57
>>263
Í¢AVC++2005EEÅ·ÌÅA
»€¢€àÌÈÌÅ·ËB
Ç€àŵœB
265:ftHgÌŒ³µ³ñ
08/02/09 19:06:46
2005ͳ·ªÉtypedef¶áÈ¢ñ¶áÈ¢©H
266:244
08/02/09 19:10:30
Ç€·êÎm©ßçêÜ·©H
267:ftHgÌŒ³µ³ñ
08/02/09 19:14:15
>>266
wchat_tÆsizeofªêv·é¢ëñÈgÝÝ^ÆÅAI[o[[hµÄÝéB
268:ftHgÌŒ³µ³ñ
08/02/09 19:15:47
wchar_tðgÝÝ^Ƶĵ€RpCIvVª ÁœÍž
269:244
08/02/09 19:25:45
>>267
·¢Ü¹ñAæí©èܹñB
>>268
MSDN
------
Visual C++ RpC IvV
/Zc:wchar_t (wchar_t ðlCeBu^ƵÄF¯)
/Zc:wchar_t ðwèµÈ¢êÍAwchar_t ðè`·é©AÜœÍ
wchar_t ªè`³êœœÌwb_[ t@CÌ¢žê©
(wchar.h ÈÇ) ðCN[h·éKvª èÜ·B
ÊíAwchar_t Í unsigned short ƵÄè`³êÜ·B
----
Æ ÁœÌÅA±ÌIvVðON/OFFµÄÝܵœªA
ÊÍÏíèܹñŵœB
270:ftHgÌŒ³µ³ñ
08/02/09 19:50:27
namespace hoge
{
@int main(int argc, char *argv[])
@{
@}
}
±êðRpC·éÆA«ÆŸíêÜ·BÇ€·ê΢¢Å·©H
error LNK2019: ¢ðÌOV{ _WinMain@16 ªÖ ___tmainCRTStartup ÅQƳêܵœB
271:ftHgÌŒ³µ³ñ
08/02/09 19:51:37
>>244
coutÍCh¶ÉεĢȢB
wcoutðgŠÎÇ¢B
wcout.imbue(locale(""));
wchar_t ch1= L' ';
wcout << (int)ch1 << L'\n';
int dt1 = 12354;
wcout << (wchar_t)dt1 << L'\n';
272:ftHgÌŒ³µ³ñ
08/02/09 19:52:06
>>270 œªµœ¢Ì©lŠŒ·Æ¢¢Å·B
273:ftHgÌŒ³µ³ñ
08/02/09 20:03:51
>>270
namespace hoge
{
@extern "C" int main(int argc, char *argv[])
@{
@}
}
274:ftHgÌŒ³µ³ñ
08/02/09 20:18:31
Ãל¥w
275:244
08/02/09 20:24:00
>>271
®«ÜµœB
ÌŸÆA¢ë¢ëÈ_ÅÊÚŵœËB
èªÆ€²Ž¢ÜµœI
y[WÅVX\ŠXbhÌõÞXêbèÌj
[XšÜ©¹Xg¥IvVð\ŠÉÂÔµ2ch
4987úOÉXV/249 KB
S:undef