ySҜ}zC/C++ ..
262:ftHgÌŒ³µ³ñ
08/03/04 01:00:20
¿åÁÆš·«µœ¢ÌÅ·ª
stringNXÌÖÅcompareÆ¢€Ìª èÜ·ªAQlÉæéÆ
int compare(const string& str) const;
Ìæ€Éè`³êÄ¢éÆ èÜ·B
±Ìè`Ìconst string& Ì&ÁÄÇ€¢€Ó¡Ì&Èñŵ倩H
ÅãÌconstàAȺ±±Éconstª éÌ©ª©èܹñB
ÜœAãÌè`ªéŸ³êÄ¢éêðTµÄÝœÌÅ·ªA»à»à»êª©Â©èܹñBstring.hÌÉÍÈ¢Ìŵ倩HH
¿âΩèÅ\µóÈ¢ÌÅ·ªAÇÈœ©³ŠÄ¢œŸ¯éÆK¢Å·B
263:ftHgÌŒ³µ³ñ
08/03/04 01:15:09
>>262
C++ðà¿ÁÆ×·éÆ¢¢æñB
&ÍQÆBC++űü³êœ@\BQÆÉ¢ÄÍ®®éæëµB
constÍÈPÉŸ€Æu±ÌÖÍoÏðÏXµÜ¹ñvÁÄéŸB
compareÖðÄÔ±ÆÅ³Ì¶ñðMçê¿ábÉÈçñŸëH
264:ftHgÌŒ³µ³ñ
08/03/04 01:15:17
œÔñA±ê©çàRÙÇ^âªoÄéŸë€©ç
üåðÇñŸÙ€ª¢Æv€B
265:ftHgÌŒ³µ³ñ
08/03/04 01:16:31
Æè`Ístring.hÅÍÈÄstringÌŸB
string.hÍCÌwb_[Ÿ©ç»èáÈ¢Ÿë€ËB
266:ftHgÌŒ³µ³ñ
08/03/04 01:19:45
>>262
> ¿åÁÆš·«µœ¢ÌÅ·ª
> stringNXÌÖÅcompareÆ¢€Ìª èÜ·ªAQlÉæéÆ
>
> int compare(const string& str) const;
>
> Ìæ€Éè`³êÄ¢éÆ èÜ·B
> ±Ìè`Ìconst string& Ì&ÁÄÇ€¢€Ó¡Ì&Èñŵ倩H
> ÅãÌconstàAȺ±±Éconstª éÌ©ª©èܹñB
>
> ÜœAãÌè`ªéŸ³êÄ¢éêðTµÄÝœÌÅ·ªA»à»à»êª©Â©èܹñBstring.hÌÉÍÈ¢Ìŵ倩HH
> ¿âΩèÅ\µóÈ¢ÌÅ·ªAÇÈœ©³ŠÄ¢œŸ¯éÆK¢Å·B
áŠÎcompare(const string str)ŸÆ·éÆøÉstd::string^ÌIuWFðüêéÆ
std::stringÌRs[RXgN^ªstrɢijÊÈÔÌRs[ª
compare(const string& str) Æ·éRÍøÉQÆðæéÆÈè
Rs[ª©È¢ÌųÊÈÌÁïªÈÈéB
ÅãÌconstÍoÖðÄÑoµœIuWFNgðC³Å«È¢æ€É·é±ÆÅ·
267:252
08/03/04 01:45:56
XŸ³ÁœûX èªÆ€²Ž¢Ü·B
>std::stringÌRs[RXgN^ªstrɢijÊÈÔÌRs[ª
>compare(const string& str) Æ·éRÍøÉQÆðæéÆÈè
>Rs[ª©È¢ÌųÊÈÌÁïªÈÈéB
ÈéÙÇI×ÉÈèÜ·B
ÆAcompareÌéŸÅ·ªAstringâcstringÌà©ÄÝœÌÅ·ªAÝ©çÈ¢ñÅ·B
268:ftHgÌŒ³µ³ñ
08/03/04 01:54:48
>>267
XÉstring©çCN[hµÄ¢éæÉ éñ¶áÈ¢©?
áŠÎcygwinÌgccŸÆ/lib/gcc/i686-cygwin/3.4.4/include/c++/bits/basic_string.hÉ éB
269:ftHgÌŒ³µ³ñ
08/03/04 02:19:09
>>262
urÈç\[XR[hÉ#include <string>ƵÄ
stringÌÉJ[\ í¹ÄENbNÅstringðJðIð·êÎ
gÍ©êéæ
270:ftHgÌŒ³µ³ñ
08/03/04 04:14:40
KÈcompareÌÆ±ÅENbNšè`ðQÆ·êÎAbasic_string::compare()©ÈÉ©oéÆv€æ
271:ftHgÌŒ³µ³ñ
08/03/04 04:15:02
AVSÌbË
272:ftHgÌŒ³µ³ñ
08/03/04 04:30:57
œÜÉÍBCBƩ̱Æàv¢oµÄË
273:ftHgÌŒ³µ³ñ
08/03/04 08:34:19
grepç¢gŠæ(L¥Ö¥`)
274:ftHgÌŒ³µ³ñ
08/03/04 08:37:41
findàgŠæÆ¬ºÔµœçDOSÌfind.exeÆëð³êéã©B
275:ftHgÌŒ³µ³ñ
08/03/04 08:46:55
vvZbTŸ¯ÊµœmÉGfB^Åõ©¯éÌÍ_Å·©cH
276:ftHgÌŒ³µ³ñ
08/03/04 09:40:08
vector^Å
vector<int> num;
num[i*j]=a;
©œ¢È±Æµœ¢ÌÅ·ª
Ç€âéÌŵ倩
277:ftHgÌŒ³µ³ñ
08/03/04 09:48:22
templateÅAÁèÌ^ÈOªn³êœêÉG[Èè
ªòÈè·éû@ÁÄ éñŵ倩H
œÆŠÎ
template<class T>
class Hoge {
@void Fuga(T &ref) {
@@//±±Ån³êœ^ðm蜢
@};
}
C++ŸÆ³H
278:ftHgÌŒ³µ³ñ
08/03/04 10:01:47
NXA©ç»êŒêh¶µœNXBnÆNXCnÌNXª éÌÅ·ª
AÌ|C^*pªÇ¿çÌn©»Ê·éû@Í èÜ·©H
RTTIŸÆpÌgͪ©é¯ÇÇ€¢€nÜÅÍÇŠÈ¢æ€Å·ªÇ¢û@Í èÜ·©H
279:ftHgÌŒ³µ³ñ
08/03/04 10:04:16
Ó¡ªÇí©çñ©Áœ¯ÇoɯÊqÅà¢êê΢¢ñ¶áÈ¢
280:ftHgÌŒ³µ³ñ
08/03/04 10:07:13
>>277
ev[gÌÁê»Ìb©È
281:ftHgÌŒ³µ³ñ
08/03/04 10:08:10
>>278
dynamic_cast
282:ftHgÌŒ³µ³ñ
08/03/04 10:08:45
>>279
fR[^p^[ÌConcreteComponentÌ^ð»Ê·éû@ÍÈ¢©ÈAÆ¢€±ÆÅ·
283:ftHgÌŒ³µ³ñ
08/03/04 10:10:30
>>278
dynamic_castÍ_ELXgÉžs·éÆ0ðÔ·B
284:ftHgÌŒ³µ³ñ
08/03/04 10:14:25
>>282
»êAp^[Ìg¢ûÁÄ¢€©AÝvªÅ«ÄÈ¢ñ¶áÈ¢ÌH
WikipediaÚØÝž
285:ftHgÌŒ³µ³ñ
08/03/04 10:19:42
>>276
operator[](size_type)ª éâñ
286:ftHgÌŒ³µ³ñ
08/03/04 10:20:04
>>284
»€ÈñÅ·¯Ç
oêÎÄAIÉ
DecoratorA-DecoratorB-DecoratorC-ConcreteComponent
ÆÔÉ^îñðœÇÁÄsKvªÅ«ÄµÜÁÄEEE
Å«ÅàAª³ÌîñŸ¯ÅàœÆ©ÈçÈ¢©Æ
287:ftHgÌŒ³µ³ñ
08/03/04 10:22:42
¶á ܳÉ>>279Ìû@Èñ¶áÈ¢ÌH
288:ftHgÌŒ³µ³ñ
08/03/04 10:26:38
>>QWT
ÈñÅ·©»ê
289:ftHgÌŒ³µ³ñ
08/03/04 10:31:02
>>287
DecoratorÌûÍ¢çÅࢶêéÌÅ·ª
ConcreateComponentÌûͱ¿çÌê¶ÅÍ¢¶êÈ¢ÌůÊqðßÞÌÍïµ¢©Æ
âÍècast̬ÛŻʵĢ̪³ï©EEE
castÉžs·éÆNULLªÔéH
bad_castªthrow³êéÌÍQÆÌLXgÌŸÁ¯EEE
290:ftHgÌŒ³µ³ñ
08/03/04 10:38:55
>>288
ÊÉnum[i * j] = aÆ·ê΢¢Æ¢€±ÆBÜ_Anum.size()ªi * jæèå«¢±ÆªðÉÈé¯ÇB
291:ftHgÌŒ³µ³ñ
08/03/04 10:40:16
>>277
ev[gÅæžSÄÌ^Åžs·éR[hð¢Äš¢ÄA
ÁÊÈ^Ÿ¯Á껵ĚƩB
292:ftHgÌŒ³µ³ñ
08/03/04 10:56:49
SÖWÈ¢ª
LXgÆÉdynamic_castðgp·éxÉ
NXÝvÉâèª Áœñ¶áÈ¢©ÆsÀÈCªÉÈéÌÍ©ªŸ¯©H
293:ftHgÌŒ³µ³ñ
08/03/04 10:58:43
>>292 »êª³íB
294:ftHgÌŒ³µ³ñ
08/03/04 11:03:25
ŽÈñ©Câœçp³ªSpublicAoàÙÆñÇpublicŸÁœ±Æª éºI
(L¥Ö¥M)
295:ftHgÌŒ³µ³ñ
08/03/04 11:32:26
ÅàcastgíŽéðŠÈ¢ÁÄ é©ççµ¢æÈ
296:ftHgÌŒ³µ³ñ
08/03/04 11:36:08
>>280,291
·ÝܹñAàŸªœèܹñŵœB
templateÅtemplate^ðó¯æÁœÉàÎÅ«éû@ª
驪m蜩ÁœñÅ·B
áŠÎtempateÖÅstd::vector<œÅàOK>Íó¯æêéª
std::list<>ÍŸßÈêÈÇB
±€¢€êAÁ껟Ævector<int>Avector<float>`Æ¢€ïÉ
OKɵœ¢^ðSÄLqµÈ¢Æ_Èñ¶áȢŷ©H
297:291
08/03/04 11:45:15
>>296
uÁèÌ(Ì)^vŸ¯LøÉµœ¢Ì©ÆvÁœ©çÁê»ðñеœB
»€ÅÈ¢ñŸÁœçtypeidÅ®IÉ^ð²×鱯ÉÈéÌ©È?
templateXÓèÌûªò¢t«ª¢¢©àmçñB
298:ftHgÌŒ³µ³ñ
08/03/04 11:52:37
>>296
±ñÈÌH
#include <vector>
template<typename T> void foo(T const& x);
template<typename E> void foo(std::vector<E> const& x) {}
int main()
{
std::vector<int> vi;
std::vector<float> vf;
foo(vi);
foo(vf);
return 0;
}
299:ftHgÌŒ³µ³ñ
08/03/04 12:00:49
concept check
300:ftHgÌŒ³µ³ñ
08/03/04 12:07:36
>>296
mplðìg·êÎÅ«éŸë
301:267
08/03/04 13:06:56
grepÍgÁœÌÅ·ªAȺ©€ÜõūȩÁœÌÅ¢ÁÄܵœB
Eclipse CDT gÁÄéñÅ·ª¯¶æ€È±ÆªÅ«ÜµœB
èªÆ€²Ž¢ÜµœB
302:267
08/03/04 13:07:28
grepÍgÁœÌÅ·ªAȺ©€ÜõūȩÁœÌÅ¢ÁÄܵœB
Eclipse CDT gÁÄéñÅ·ª¯¶æ€È±ÆªÅ«ÜµœB
èªÆ€²Ž¢ÜµœB
303:ftHgÌŒ³µ³ñ
08/03/04 13:18:46
[ßDß] castÄ·²Ãמ޵ٶ׷όÀ, ±²ŒÃI
304:ftHgÌŒ³µ³ñ
08/03/04 13:21:32
ìYeí{ÍšA蟳¢B
ìYßÚ{ÆÈšñ{ÍOKB
305:ftHgÌŒ³µ³ñ
08/03/04 13:34:47
>>298
template<typename E> void foo(std::vector<E> const& x) {}
[±€¢€«ûÅ¢¢ñÅ·ËB©èܵœB
¢Â©³çÉ¡GÈIʪKvÉÈÁœçAmplâconcept checkà
²×ÄÝÜ·BÇ€àŵœB
306:ftHgÌŒ³µ³ñ
08/03/04 14:49:30
¿åÁÆšq˵œÝÌÅ·ª
void qsort(void* base, size_t n, size_t size, int(*fnc)(const void*, const void*));
Æ¢€è`ª èÜ·ªAconst void* ÁÄÈñÈÌŵ倩H
voidÁÄÌÍuóÌ^vÁıƟÆv€ÌÅ·ªAóÌàÌðconst(Åè)·éÁÄÇ€¢€±ÆÈÌŵ倩H
œàȢ̟©çÅèµæ€ªÈ¢Æv€ÌÅ·ªEE
ÜœAøªvoid*ÉÈÁÄ¢éÌàæª©èܹñBvoid(œàÈ¢)Ì|C^ðøÉ·éÁÄÇ€¢€±ÆÈÌŵ倩HH
307:ftHgÌŒ³µ³ñ
08/03/04 14:51:16
void*ÍÄp|C^BvoidÆÍÖWÈ¢B
308:ftHgÌŒ³µ³ñ
08/03/04 14:53:05
>>306
CÅÍuœ©ÖÌ|C^vð çížÆ«É void* ðg€Bqsort()Å
Í\[gÎÛÌ^ªÜÁĢȢÌÅAœÅàó¯æê鿀É
void*ðgÁÄ¢éB
const void* ÁÄÌÍAu»Ì|C^ªwµÄ¢éæÍ«·ŠµÜ
¹ñævÆ¢€Ó¡B
309:ftHgÌŒ³µ³ñ
08/03/04 14:56:06
|C^ÉÍAhXÆu»ÌAhX©çæÉÇ€¢€f[^ªüÁÄ¢é©vÆ¢€îñªÜÜêéB
void^|C^ÁÄÌÍu»ÌAhXÉœªüÁÄ¢é©ðwèµÈ¢|C^vÆ¢€Ó¡B
ó¯æÁœÖàÅKØÈ^ÉLXgµÄâÁÄg€±ÆÉÈéB
qsortÍintÅàcharÅà\¢ÌÅà\[gÅ«éÄpIÈÖÉ·éœß»€¢€`ÉÈÁÄéB
constÁÄÌÍu»Ì|C^ÌêÉüÁÄéÏðÏXµÄÍ¢¯Ü¹ñvÁÄÓ¡B
const¯œÖàÅ€Á©è«·ŠéÆRpCG[ÉÈé©çA~Xð\hÅ«éB
310:ftHgÌŒ³µ³ñ
08/03/04 16:30:54
ºLÌ\[Xð
bcc32 test.cpp
ÅRpC·éÆÌsÅ
G[2423 ¶ÝµÈ¢ev[g'show_array'ÌŸŠIÈÁ»ÜœÍCX^X»
*** 2 errors in Compail ***
ª\гêÈ·B
¶ÝµÈ¢ÁÄŸíêÄàŒOÉEEEE
ev[gÌè`ªÔáÁÄéÌŵ倩H
311:310
08/03/04 16:31:43
--- test.cpp ---
#include <iostream.h>
/*-------------------------------------------------------*/
/* zñÌ\Šev[g */
/*-------------------------------------------------------*/
template<class T, class T1, class T2>@T show_array( T1 *array, T2 count )
{
T2 index;
if( count == 0 ){ /* \ŠµÈ¢ ? (YES) */
return( 0 ); /* ñ\Š */
}
/* zñð\Š */
for( index = 0; index < count; index++ ){
cout << array[index] << ' ';
}
return( 1 ); /* \Š */
}
312:310
08/03/04 16:32:59
template char show_array( int *array, int count );@@@@@@
template int show_array( float *array, unsigned char count );@
/*-------------------------------------------------------*/
/* mainÖ */
/*-------------------------------------------------------*/
void main( void )
{
int pages[] = { 100, 200, 300, 400, 500 };
float price[] = { 10.05, 20.10, 30.15 };
/* int^Ìzñ */
show_array( pages, 5 );
cout << '\n';
/* float^Ìzñ */
cout << show_array( price, 3 ) << endl;
cout << show_array( price, 0 ) << endl;
cout << '\n';
return;
}
313:ftHgÌŒ³µ³ñ
08/03/04 16:53:01
unsigned char String[9] = "S2KTI2G7";
unsigned char KeyTable[11] = "0123456789";
char *id = "0";
int i;
for(i = 0; i < 8; i++)
@@String[i] ^= *id;
±ÌvOÌ®ìªæí©èܹñ
œÆŠÎString[0]ÍrÌAXL[R[hª83A0ÌAXL[R[hª48ÈÌÅ
String[0] = 83^48ÉÈéÌ©ÆvÁœÌÅ·ªAÀÛÍ99ÉÈÁĢ鿀ŷB
Ç€µÄ99ÉÈéÌŵ倩H
314:ftHgÌŒ³µ³ñ
08/03/04 16:53:46
>>310
*** 2 errors in Compail ***
pž©µ¢©ç¿áñÆRsyµæ€ËB
315:ftHgÌŒ³µ³ñ
08/03/04 16:56:05
>>313
CÅÍnbg(^)ÍrbgÌrŒ_aZqÈÌÅA83^48Í¿áñÆ99ÉÈéB
316:ftHgÌŒ³µ³ñ
08/03/04 16:58:09
>>313
83^48
=1010011^0110000
=1100011
=99
317:ftHgÌŒ³µ³ñ
08/03/04 17:01:12
>>315-316
ÈéÙÇ
±±µÎçŒÌŸêµ©âÁÄÈ©ÁœÌÅ·Á©èYêÄܵœ
·Îâ¢ñ èªÆ€²Ž¢Ü·
318:ftHgÌŒ³µ³ñ
08/03/04 17:01:17
>>310
±ñÈŽ¶¶áÈ¢©ÈœÔñ
return(@1@);@/*@\Š@*/@
};@<-----@±±ev[gÌÅãÉZ~RªKv
template@char@show_array.....@š@template<>@char@show_array.....
template@int@show_array.....@š@template<>@int@show_array.....
show_array(@pages,@5@);@š@show_array<char>(@pages,@5@);
show_array(@price,@3@)@š@show_array<int>(@price,@3@)
show_array(@price,@0@)@š@show_array<int>(@price,@0@)
319:ftHgÌŒ³µ³ñ
08/03/04 17:02:30
>>310
»Ìev[gÖÌÚIªÓ¡sŸÈñŸªAæèžŠžuàvSp󪩊éGfB^ðgš€B
320:ftHgÌŒ³µ³ñ
08/03/04 17:05:25
>>310
œªAev[gÖÅÍzñÌêðo͵ĻÌL³ðÔ·Ÿ¯Æ»fµÄèÉC³µÄÝœB
--
#include <iostream>
using namespace std;
template<class T> bool show_array(T array[], int N)
{
for (unsigned ic = 0; ic < N; ++ic) {
cout << array[ic] << ' ';
}
return N != 0;
}
int main( void )
{
int pages[] = { 100, 200, 300, 400, 500 };
float price[] = { 10.05, 20.10, 30.15 };
/* int^Ìzñ */
show_array( pages, 5 );
cout << '\n';
/* float^Ìzñ */
cout << show_array( price, 3 ) << endl;
cout << show_array( price, 0 ) << endl;
cout << '\n';
return 0;
}
321:320
08/03/04 17:09:21
¢©ñAzñÌvfðèÉæŸ·éo[WÌŒcÅø«Nªå¶Ÿw
¢ÅÈñÅA»Ìo[Wà\ÁÄš±€B
--
template<class T, size_t N> bool show_array(T (& array)[N])
{
for (unsigned ic = 0; ic < N; ++ic) {
cout << array[ic] << ' ';
}
return N != 0;
}
--
±êŸÆAshow_array(price)ÅgŠéBÅàßèlÌÓ¡ªÈ¢w
322:306
08/03/04 17:33:00
ÈéÙÇB
XŸ³ÁœûXAí©èâ·¢àŸ èªÆ€²Ž¢Üµœm(_ _)m
323:310
08/03/04 17:34:28
X èªÆ€²Ž¢Ü·I
314 >> Aaª]ªÅµœ@(;Ö;`)
318 >>
ev[gÌÅãÉZ~RtÁ
templateÌãÉ<>tÁ
show_arrayÌãÉ<^>tÁ
ðâÁÄÝܵœªAG[àeÍÏíèܹñŵœEE
319 >>
ûKpÉFXâÁÄÝœŽ¶ÅìèܵœB
GfB^ͳçGfB^gÁÄÜ·B
320 >>
> œªAev[gÖÅÍzñÌêðo͵ĻÌL³ðÔ·Ÿ¯Æ»fµÄ
³¹œ¢®ìÍ»ÌÊèÅ·B
320³ñÌ\[XÇñūܷB
324:310
08/03/04 17:36:39
AJ[Ìt¯ûÜ¿ªŠœ`
325:ftHgÌŒ³µ³ñ
08/03/04 17:47:39
>>324
Spóð©Šéæ€ÉµëÁÄŸ€ÌÍA>320ÉSpóªüÁÄ¢é©çÈñŸªB
# Ü_Aã©çÇÁµœÅ ë€óÌÆ±ëÈOÉËB
326:325
08/03/04 17:48:15
¢âASpóªüÁÄ¢éÌÍ>320¶áÈÄ>310ŸÁœ_/P|
327:310
08/03/04 17:57:39
>>320³ñÌ\[Xð³ÉA©ªÆÌá¢ðlŠÄ
>>311-312
Ì\[XÌÌLqðíµA
>>318³ñÌÏXðÁŠœçARpCÊèܵœ`B
\[XÌ«ûªReReflÈñÅA
>>320³ñÌ\[X©Ä׵ܷB
>>318³ñÌÇÁª³¢êÍG[ªoéÌÅ·ªAàeÇñÅà
show_array<char>( pages, 5 ); Ì<char>ªœÅKv©
í©çñÅ·Aqgšè¢Å«È¢Åµå€©B
G[àeͫŷB
G[2285@show_array<T,T1,t2>(int *, int)Éêv·éà̪©œçÈ¢
328:ftHgÌŒ³µ³ñ
08/03/04 18:00:40
>>327
template<class@T,@class@T1,@class@T2>@T@show_array(@T1@*array,@T2@count@)
Æ¢€ev[gª éÌÅAshow_array(@pages,@5@);@Í
show_array<char,@int*,@int>@©àµêñµ
show_array<int,@int*,@int>@©àµêñµ
show_array<long,@int*,@int>@©àµêñµ
T1ÆT2Íø©êÎí©é¯ÇTÌ^ÍèūȢÌÅ
329:310
08/03/04 18:03:50
>>326
!?@š
template<class T, class T1, class T2>Æ
T show_array( T1 *array, T2 count )
ÌÔÉSpóªIIIIII
RsyµœãÉüê¿áÁœÝœ¢Å·B('A`)
²wE èªÆ€²Ž¢Ü·B
330:310
08/03/04 18:13:08
>> 328
ÈéÙÇI
ª©èâ·¢²àŸ èªÆ€²Ž¢Ü·B
µÉ
<char>show_array( pages, 5 );
µÄÝœçA\¶G[ŵܜB
show_array<char>( pages, 5 );
ÁÄ«ûÈñÅ·ËB
²ñº³ÁœFlA èªÆ€²Ž¢ÜµœiBBjJ
331:ftHgÌŒ³µ³ñ
08/03/04 19:37:21
oprator void *() const
{ if (state&(badbit|failbit)) return 0; return (void *) this; }
Ìopratorͱ±ÅÍÇ€¢€Ó¡ÅgíêÄ¢éÌŵ倩H
±ÌÊuÉ éÌðßĩܵÄAæí©çÈ¢ñÅ·B
332:ftHgÌŒ³µ³ñ
08/03/04 19:41:08
>>331
^Ï·ÌZqB
333:ftHgÌŒ³µ³ñ
08/03/04 20:00:13
>>331
áŠÎ
class@Foo@{
public:
@operator@int()@{@return@42;@}
};
main()@{
@Foo@foo;
@int@x@=@foo;@//@<--@±±
@cout@<<@x;
}
Æ¢€Ó€ÉANXðÊÌ^ÉÏ··éÆ«ÉÄÎêéB
334:ftHgÌŒ³µ³ñ
08/03/04 21:54:20
¿ÈÝÉA±Ìvoid*ÖÌÏ·ZqÍ
if (str)Ìæ€Éð®Åp¢éœßÉpÓ³êÄ¢éB
Ⱥoperator boolÅÈ¢©Æ¢€ÆAboolÅÍ®ÖϷūĵ܀©çB
int x = str;Ìæ€ÈzèOÌÏ·ðsí¹È¢œßÅ éB
335:ftHgÌŒ³µ³ñ
08/03/04 23:21:45
C#ÅJµœvOðAîÅêC++.NetÅ«Œ³È¢Æ¢¯ÈÈÁœÌÅ·ª
[C#]
List<int[]> foo;
Ì®ªAC++.NetÅÍÇ€Œ¹Î¢¢Ì©í©èܹñB
intÌzñÅÍev[gðKūȢÌŵ倩H
336:ftHgÌŒ³µ³ñ
08/03/04 23:24:05
>>335
List<array<int>^>^ foo;
337:ftHgÌŒ³µ³ñ
08/03/04 23:24:19
URLØÝž(vene.wankuma.com)
±êH
338:335
08/03/04 23:25:39
>>336
èªÆ€²Ž¢Ü·BÌ4ÔªÔÁÄ«œB
±êÅìÆª±«Ü·B
339:336
08/03/04 23:40:27
>>338
¿ÈÝÉ Èœª¢ÄéÌÍC++/CLIÈÌÅ
ªçÈ¢±Æª ÁœçC++/CLIXÉsÆK¹ÉÈêé©àB
340:ftHgÌŒ³µ³ñ
08/03/04 23:56:55
List<array<int>^>^ foo;
ÎÁÄ鿀ɩŠÄœ©YY·éw
341:ftHgÌŒ³µ³ñ
08/03/05 00:36:11
List<List<List<array<int>^>^>^>^ foo = gcnew List<List<List<array<int>^>^>^>();
342:ftHgÌŒ³µ³ñ
08/03/05 00:37:46
ÏNÌ^âÈñÅ·ªAX^bNTCYÍ¢ÂÇ€âÁÄÜéñŵ倩B
1. RpCÉ
2. NÉ
3. ÀsÉ
a. ©®IÉiRpCÆ©ª©®ÏÌgpóµÈÇð©Äj
b. ÅèIÉ
œªAÇê©ÉÄÍÜéÆv€ñÅ·ªB
343:ftHgÌŒ³µ³ñ
08/03/05 00:40:00
RpCµœç
344:ftHgÌŒ³µ³ñ
08/03/05 00:48:12
>>342
«˶B
WindowsÍNÉÀst@CÌwb_ÉTCYª©êéñŸÁœ
©ÈBqXbhÌX^bNÍÀsB
345:ftHgÌŒ³µ³ñ
08/03/05 00:48:49
>>342
WindowsÅÍexeÉX^bNTCYª©êéÌÅANÈO
gÝÝÈñ©ÅZbgxN^àRpC·éKvª éêÍARpC
Æv€B
346:ftHgÌŒ³µ³ñ
08/03/05 01:31:09
gÝÝÅJµÄœÆ«ÍX^bNTCYÌ`FbNµÄœÈ
DZÜÅãÁÄ«Äé©SzŸÁœ©çB
ÌÆ«ÍRpCŸÈB
347:ftHgÌŒ³µ³ñ
08/03/05 01:34:24
€¿àX^bN|C^Ì`FbNâÁÄéBñÅàANŸÆv€B
NÉX^bN|C^ÌJnAhXÆ©O[oÏÌmÛÌæAhXÆ©ÌÝèt@Cðg€©çB
348:ftHgÌŒ³µ³ñ
08/03/05 01:52:00
>>347
»€ŸÈBœÆ©`®Ìt@CÌT}[ð
oµÄêéc[ª ÁœÈB
349:ftHgÌŒ³µ³ñ
08/03/05 02:57:13
æAC++ Éš¯é class Æ struct Ìá¢ÍftHgÅ private ©
public ©Ì·µ©È¢ÁÄŸ€¯ÇA{H
class ŸÆp³âçÌîñðÇ·éœßÌÃÙÌoªÅÉÁ©ȢH
class C {int a;}
struct S{int a;}
C c;
S s;
ðÀsµÄfobKÅ c Æ s Ìg©ÄÝéÆoáíÈ¢H
350:ftHgÌŒ³µ³ñ
08/03/05 03:10:19
NXÍoÖâAI[o[[hªgŠéŸë
\¢ÌÌg£Ÿë€
351:ftHgÌŒ³µ³ñ
08/03/05 03:14:17
{Æ©ŸÆAclass Æ struct ÍftHgÌÂÍͪÙÈ韯ÅA
RpCxÅÍS¯êÅ·Æ¢Ä éB
352:ftHgÌŒ³µ³ñ
08/03/05 03:16:08
>>349
structàp³Å«éÌɜݱªá€ÆšàÁœñŸH
353:ftHgÌŒ³µ³ñ
08/03/05 03:16:27
ש¢±ÆÍCÉ·éÈ@g€€ÆµÄ¯¶Èç\íÈ¢Ÿë€
354:ftHgÌŒ³µ³ñ
08/03/05 03:17:46
>>349
åïÌÀÅÍAŒzÖðÂNXE\¢ÌÍA
ŒzÖÄoÌœßÌe[u (vtbl)ÖÌ|C^ðBµÁÄ¢éªA
±êàNXE\¢ÌÇ¿çÅ௶B
KiÅà\¢ÌÆNXÍ®Sɯê³êA
\¢ÌÉ¢Ĝ©Æ§µœKèͶݵȢB
SÄNXƵÄÜÆßçêÄ¢éB
355:ftHgÌŒ³µ³ñ
08/03/05 04:19:31
full bokko
356:ftHgÌŒ³µ³ñ
08/03/05 07:17:09
»µÄåïÌÀÅÍ
ŒzÖðœÈ¢NXE\¢ÌÍ
vtbl ÖÌ|C^ðÁĢȢB
357:ftHgÌŒ³µ³ñ
08/03/05 07:38:19
>>347
H8âSHÅÍ#pragma stacksize XXX Æ¢€Ìª éÌÅA
X^bNTCYÍRpCAX^bNAhXÍNÆ¢€±Æ©ÈB
358:ftHgÌŒ³µ³ñ
08/03/05 08:45:07
struct S{ int m_a; int m_b}
ÆµÄ m_b Éãüµæ€ÆµÄ
void hoge(void *s){
@int offset = sizeof(int);
@unsgiend char * p = (unsgiend char *)s;
@int * m_b = p[offset];
@*m_b = 1234
}
Ýœ¢ÈR[hª¢Ä éÆÊuªžêÄÊó©
359:ftHgÌŒ³µ³ñ
08/03/05 09:23:24
>>358
¢¢ŠA«˶ŷB
360:ftHgÌŒ³µ³ñ
08/03/05 09:30:41
struct S {
@int a;
@int b;
@void clear() {
@@ZeroMemory(this, sizeof(*this));
@};
}
±€¢€Ìà}YCH
361:ftHgÌŒ³µ³ñ
08/03/05 09:32:20
>>360
¢Â© POD ÌK¥©çOêéÏXðÁŠœÆ«ÉYêžÉC³·éoåªKvB
362:ftHgÌŒ³µ³ñ
08/03/05 09:42:56
vectorÆ©ÇÁµœêÅ·ËB
ãÌÙ€ÅoÄœAŒzÖðÂNXðp³µÄ
vtbl ÖÌ|C^ðÁÄéêÍ>360Åâ賵ŷ©H
363:ftHgÌŒ³µ³ñ
08/03/05 10:42:35
>>362
ŒzÖðÁœàÌà POD ©çOêéB
364:ftHgÌŒ³µ³ñ
08/03/05 10:45:50
>>357
HEWÅ»êâÁÄœÈBÄ©configüÍæÊÅZNVÌJX^}CYÅ«œB
365:ftHgÌŒ³µ³ñ
08/03/05 10:47:58
struct S {
@std::vector m_v;
} s;
Å
ZeroMemory(&s, sizeof(S));
ÁÄâÁÄñŸª é
366:ftHgÌŒ³µ³ñ
08/03/05 11:46:02
RpCBCC55
class PPP{
public:
union{
@@struct{
@@@@int n;
@@@@struct{
@@@@@@enum Hoge hoge;
@@@@@@int x;
@@@@}aa[32][32];
@@@@LPCWSTR name[256];
@@}a;
@@struct{
@@@@int p;
@@@@char i;
@@@@float y;
@@@@Hoge *o;
@@}b;
@@struct{}c;
}data;
};
±ñÈ€p̪NXÏÉÈÁÄéÉ
PPP ppp;
Æ·éÆ»±ÅvOªáOàf©žÉ¿ÄµÜ¢Ü·B
µ©µAPPPðŒÌNXÌNXÏÆµÄ韵Ě¯Î¿Ü¹ñB
class Hoka{
PPP p;
};
ª©élšÈª¢µÜÂEEEB
367:ftHgÌŒ³µ³ñ
08/03/05 11:47:00
¿ÈÝÉenum HogeÍPPPÌÅè`³êÄÜ·B·¢Ü¹ñ
368:ftHgÌŒ³µ³ñ
08/03/05 12:21:18
»ÛªÄ»·éŬÀÌ\[X€
369:ftHgÌŒ³µ³ñ
08/03/05 14:39:59
¡XÅ·ª>>290̱ÆÅ
vector<int> num;
num[i*j]=a;
Ånum.size()ªsèÌÆ«ii*jæè¬³¢Æ«à éjê
æÉnum[i*j]ðmÛµÄAnum[i*j]=aðüêêÎæ¢Ìŵ倩
mÛÌdûð³ŠÄŸ³¢
370:ftHgÌŒ³µ³ñ
08/03/05 14:46:08
>>369
num.resize(100) Æ©ÅD«ÈTCYÉÏX·é
371:ftHgÌŒ³µ³ñ
08/03/05 15:20:53
num.resize(i*j)ÁÄ¢€ÌàÂ\ÁıÆÅµå€©H
372:ftHgÌŒ³µ³ñ
08/03/05 15:28:07
>>368ŬÀªª©èÃç¢ÌÅG[ÌoÈ¢newÅãpµÜµœB
373:ftHgÌŒ³µ³ñ
08/03/05 15:58:15
>>371
Â\Ÿª resize(i*j) ÅÍTCYª«èÈ¢Æv€Œ
374:ftHgÌŒ³µ³ñ
08/03/05 16:14:35
àÁÆàgíêĢȢobt@ððúµœ¢ÌÅ·ªSTLÈÇÅÇ¢CuÍ èÜ·©?
375:ftHgÌŒ³µ³ñ
08/03/05 16:53:00
>>374
¹ßÄà€¿åÁÆïÌIÉŸíÈ¢ÆÇ€ÉàÈçÈ¢Æv€æ
376:ftHgÌŒ³µ³ñ
08/03/05 16:57:59
LRUðÀ·éÌÉKµœReiÍÇêŵ倩ÁıƟÆGXp[µÄÝé
JavaÌLinkedHashMapÝœ¢ÈâÂH
STLÉ»êÍÈ¢©çAmapÆlistðgÝí¹éÌ©ÈEE
377:ftHgÌŒ³µ³ñ
08/03/05 18:39:44
3³zñitexturejð®IÉmÛµæ€Æ
if( (int)texture.size() < ( temp[0] + temp[1]*maxValue[0] + temp[2]*maxValue[0]*maxValue[1] ) )
texture.resize(temp[0] + temp[1]*maxValue[0] + temp[2]*maxValue[0]*maxValue[1]);
texture[temp[0] + temp[1]*maxValue[0] + temp[2]*maxValue[0]*maxValue[1]] = num;
±€µœçAi[³êܹñB
»ÝÌ3³zñÌæèàA嫢̪oÄ«œçlðæèŒµÄAüé׫ÉÔ¿Þ
ÁıÆðâ蜢Ÿ¯ÈÌÅ·ª
378:ftHgÌŒ³µ³ñ
08/03/05 18:58:40
>>377
TCYª@10@ŸÁœçALøÈCfbNXÍ@0`9@Ÿ
TCYª@temp[0]@+@....@*maxValue[1]@ŸÁœçA
LøÈCfbNXÍ@0@`@temp[0]@+@....@*maxValue[1]@-@1@ÜÅŸ
379:ftHgÌŒ³µ³ñ
08/03/05 19:07:20
>>378
èªÆ€²Ž¢Ü·A»êª²¯Ä¢Üµœ
œŸ 0 0 0 ª ÁœÆ«Éi[ūȢƢ€G[ªoÄ«Ä
ãµÈÌÉ
380:ftHgÌŒ³µ³ñ
08/03/05 19:20:23
class@AðáOÆµÄ°éÆ«
throw@new@AG
Ìæ€ÉnewŶ¬µÄ°éÌÆ
throw@A();
ưéÌÍÇÁ¿ªÇ¢Ìŵ倩H
381:ftHgÌŒ³µ³ñ
08/03/05 19:25:04
©vZXÌHWNDðæéÉÍÇ€µœç¢¢Ìŵ倩H
382:ftHgÌŒ³µ³ñ
08/03/05 19:25:10
Þ©[µÇÁ©Å©œÌÅ·ªA3³ÈãÌzñÍgíÈ¢ûªÇ¢ÁÄÇ€¢€±ÆÅµå€©H
\[XªÇ±ŸÁœ©oŠÄÈ¢ÌÅ·ªA»ÌÆ«ÌL¯ª è3³ÈãÍÈ霯gíÈ¢æ€ÉµÄéŽóÅ·
383:ftHgÌŒ³µ³ñ
08/03/05 19:27:31
ñÜœ¢ÆCéžâç©·ÞÌoOªŠé©àcµêÈ¢¯ÇèIÈR¶áËŠæÈ
384:ftHgÌŒ³µ³ñ
08/03/05 19:37:17
>>380
JavaÆêÉ·ñÈ
385:ftHgÌŒ³µ³ñ
08/03/05 19:57:35
>>382
»Ìzñª\·mª{¿IÉR³ÈãÌmÈçR³zñÅÇ¢¯Ç
\¢ÌâNXÅ\·×«mðzñɵĵ܀ÌÍð¯é׫
386:ftHgÌŒ³µ³ñ
08/03/05 20:47:36
lvZÅYRÂÈãÌsñÆ©µíÈ¢ÀèA
ÜžKvÉÈ鱯ÍÈ¢Æv€¯ÇËB
387:ftHgÌŒ³µ³ñ
08/03/05 20:52:58
>>380
new·éÆÇ±©Ådelete¹ñÆ¢©ñæB
388:ftHgÌŒ³µ³ñ
08/03/05 21:29:17
>>380
new ͵ȢB
389:ftHgÌŒ³µ³ñ
08/03/05 22:04:19
#define SAFE_DELETE(p) {delete (p); (p)=NULL;}
ðè`µÄA
SAFE_DELETE(ptr);
Æ·éÆu\¶G[ : ';' ª`ÌOÉ èܹñvÌG[ÉÈÁĵܢܷB
delete ptr;ÈçÊÉRpCÅ«éÌÅ·ªA
DZª«¢Ìŵ倩B
390:ftHgÌŒ³µ³ñ
08/03/05 22:06:01
¿åÁÆs«lÜÁĵÜÁœÌſ⳹ĺ³¢B
VC2005AWinXP64ÅÈºÌæ€ÈvOðìÁœÌÅ·ªA€Ü®¢ÄêܹñB
DWORD WINAPI ThreadPrc(LPVOID lpParameter)
{
while (!ThreadTerminated){
//vª éÜÅÒ@
WaitForSingleObject(hEventHandle,INFINITE);
if (ThreadTerminated) break;
//€LIuWFNgÌrŒANZX
WaitForSingleObject(hMutexHandle,INFINITE);
//KÉ
ReleaseMutex(hMutexHandle);
//ªIíéÆèÉÊm
//±±ªš©µ¢
SetEvent(hDoneEventHandle);
}
return 0;
}
iÍDelphiÅâÁÄÜ·ªA64rbgÅrh·éKvª ÁœÌÅADelphiÅìÁœàÌðC++ÉÚAµÜµœB
vZXÔÊMÅ¢ë¢ëâÁÄéí¯ÈÌÅ·ªA¯¶Æ±ëÅ¢Âà^CAEgµÄµÜ¢Ü·B
à¿ëñINFINITEɷ鯻ÌÜÜÅÜÁĵܢܷB
32rbgvZXÅSetEventµÄA64rbgvZXÅWaitFor·éÌͬ÷·éÌÅ·ªA»Ìtª€Ü¢©È¢ÌÅ·B
VCÅLÌâèÈÌ©A64rbgÌâèÈÌ©AÖW 軀ÈÌͲ×ܵœªSŽöªª©èܹñB
±Ìª³Š€Ü¢¯Î®¬ÈÌÅ·ªEEEB
ÇÈœ©ª©éû¢ÜµœçAhoCXšè¢µÜ·(o*¡_¡)o
391:ftHgÌŒ³µ³ñ
08/03/05 22:09:05
>>389
SAFE_DELETE(ptr);
Í
{delete (p); (p)=NULL;};
ÉWJ³êéB
} ÌãÉ ; ª é̪|CgB
±êÅœ©N±ÁÄñ¶áËH
392:ftHgÌŒ³µ³ñ
08/03/05 22:12:09
>>389
âèÌN±éŬÌR[hðI
393:ftHgÌŒ³µ³ñ
08/03/05 22:17:54
>>389
€¿Ì«ŸÆÊÉ®¢ÄµÜÁœæ[B
üèð^ÁÄÝé׫
394:331
08/03/05 22:18:39
ÈéÙÇI
ª©èâ·¢àŸ èªÆ€²Ž¢Üµœm(_ _)m
395:389
08/03/05 22:20:21
üè𵲫o·Æ±ñÈŽ¶Å·B
-----SystemMacro.h----------
#ifndef SYSTEMMACRO_H
#define SYSTEMMACRO_H
#define SAFE_DELETE(p) {delete (p); (p)=NULL;}
#endif
------List.h----------
#include <windows.h>
#include "../system/SystemMacro.h"
template <class T> class List {
public:
virtual ~List(){
if(!_tempFlg) {
WORD i;
for(i=0; i<_ct; i++) {
delete _arr[i];
}
}
SAFE_DELETE(_arr); //©±±ðdelete _arr;É·éÆRpCÊé
}
};
ŠListÌoÏÍȪµÄÜ·B
396:ftHgÌŒ³µ³ñ
08/03/05 22:21:28
template <typename T>
void SafeDelete(T *& p) { delete p; p = NULL; }
397:ftHgÌŒ³µ³ñ
08/03/05 22:23:00
Èñ©öµ°ÈR[hŸª
_arrÌ^ÍH
398:ftHgÌŒ³µ³ñ
08/03/05 22:24:06
Ç[Åࢢ¯Ç _ ÍÏŒÌOɯéKµÍÇÈ¢B
¯éÈçãëÉB
399:389
08/03/05 22:25:12
A_arrªev[gÌAT**^ÈÌÅ·ªA
»êª«¢Ìŵ倩B
400:ftHgÌŒ³µ³ñ
08/03/05 22:29:21
fmtflags setf(fmtflags flg, fmtflags mask);
ÖÌàŸÅA±ÌÖÍ
flags((flags() & ~mask) | (flag & mask));
Ìæ€ÈðµÄ¢éAÆ¢Ä ÁœÌÅ·ªA
flags((flags() & ~mask) | flag);
Å௶ÅÍȢŵ倩H
ȺíŽíŽ(flag & mask)Æ¢Ä éÌŵ倩B
401:389
08/03/05 22:37:45
>>396
èªÆ€²Ž¢Ü·B
>>397
template <class T>ÌT**^Å·B
>>398
Æ éJavaÌ\[XÅNXÌoÏÌæªÉ_ð¯ĜÌð^µÄÜ·B
CŸêÍܟߜΩèÈãAO[OÆ2chÅSÄwñŸÌÅA
îbªÈÁÄÈ¢ÌÅ·ªAæª_ÍÈñÅs¡¢ñŵ倩B
ãÌListNXÌ@\ÍAœÔñstd::vectorÆÙÚ¯¶Å·B
WCuÆ¢€ÌðmçÈÄAìÁĵܢܵœB
402:ftHgÌŒ³µ³ñ
08/03/05 22:38:32
>>400
> ¯¶ÅÍȢŵ倩H
¢âA¯¶¶áÈ¢©çB
403:ftHgÌŒ³µ³ñ
08/03/05 22:43:14
Ÿê©>>391ÉËÁñÅâêæ
>>401
u_vnÜèÌPêÍVXe\ñ³êéÂ\«ª é©çB
404:ftHgÌŒ³µ³ñ
08/03/05 22:45:19
pÍœ©çoÄ«œH
Å¢¢Ì©ÈB
405:389
08/03/05 22:49:40
>>403
èªÆ€²Ž¢Ü·B
}ÌãëÉ;ð¯ÄàA€¿Ì«ÅÍ®«ÜµœB
406:ftHgÌŒ³µ³ñ
08/03/05 23:06:52
X èªÆ€²Ž¢Ü·B
fmtflags setf(ios::hex, ios::basefield);
ÅA
ios::hex ª 0x0800
ios::bsaefield ª0x0e00
Æ·éÆA
ios::hex & ios::basefield
ÅA
0000 1000 0000 0000
Æ
0000 1110 0000 0000
Ì_ÏÈÌÅA
0000 1000 0000 0000
ÅAÇ
ios::hex(0000 1000 0000 0000)
»ÌàÌÆÏíçÈ¢¶áñÆvÁœÌÅ·ªADZ©Åšá¢µÄ¢éÌŵ倩B
407:ftHgÌŒ³µ³ñ
08/03/05 23:08:47
>>406
> _ÏÈÌÅA
¢âAဩçB
408:ftHgÌŒ³µ³ñ
08/03/05 23:14:46
Æè Šž
SAFE_DELETE(_arr);
ð
{delete (_arr); (_arr)=NULL;};
Éu«·ŠÄRpCªÊé©Ç€©B
ÆARpCÍœH
409:ftHgÌŒ³µ³ñ
08/03/05 23:16:54
>>400
flgͧĜ¢rbgAmaskÍflgÌ®·étB[hðwè·éªA
flgªmaskÌtB[hÉ®³È©ÁœêÉA
]vÈtB[hÌrbgð§Äĵ܀Ìðh®œßB
410:ftHgÌŒ³µ³ñ
08/03/05 23:24:26
¿â³¹Äž«œ¢ÌÅ·ªA
±Ìæ€É韵ܵœªA
char a[] = "1234";
char b[] = "4567";
char* abc[2][255]={
a,
b
};
*abc[1]Ålªæèo¹Ü¹ñB
±€¢€âèûͳŵ倩H
411:ftHgÌŒ³µ³ñ
08/03/05 23:30:23
>>410
abcÍ|C^ªñ³ÉÀñŸzñŸªA»êÅ¢¢Ì©H
â蜢ÌÍA|C^Ìê³zñÌæ€É©ŠéªB
ÂÜèA±€B
char* abc[2] = {a,b};
»€µœçA
*abc[0]Í'1'
ÉÈéB
412:ftHgÌŒ³µ³ñ
08/03/05 23:47:55
>399
> A_arrªev[gÌAT**^ÈÌÅ·ª
>395ð©éÆ delete _arr[i]; Æ é©çA_attrÍ new[] ÅmÛµœAhXðOñƵĢȢ©H
»êÈç delete ÅÍÈ delete[] Ʒ׫B
RpCG[ÌÆÍ³ÖWŸªB
413:ftHgÌŒ³µ³ñ
08/03/05 23:55:17
411>
šÁµáéÆšèñ³zñÌ|C^Å·ËB
SRCªÂ«Ü¹ñŵœB
èªÆ€²Ž¢Ü·B
414:ftHgÌŒ³µ³ñ
08/03/06 00:16:05
>389
Æè Šž{_ÆÍÊŸªA»ÌèÌ}NÍ
if(flag)
@@SAFE_DELETE(p);
else
@@do_something();
Ýœ¢É·éÆG[ÉÈéÌŵεÎ
#define SAFE_DELETE(p) do { delete (p); (p) = NULL; } while(0)
Ìæ€Éè`³ê鱯ªœ¢B
415:ftHgÌŒ³µ³ñ
08/03/06 00:23:46
±ÌêÈç
#define SAFE_DELETE(p) ((void)(delete (p), (p) = NULL))
ÅࢢÆv€¯ÇËB
Ü A®É¯é̪ŸÆ¢€ÌÅ êÎA
do-while gÁœÌÅࢢB
416:ftHgÌŒ³µ³ñ
08/03/06 00:50:58
SAFE_DELETEðgÁÄéÌð©éÆ
10NOÉwÔÌð~ßĵÜÁœñŸÈƪ©é
©ª©gªSAFE_DELETE³êĵÜÁœñŸ
417:ftHgÌŒ³µ³ñ
08/03/06 03:06:00
>416
¿ÈÝÉghÍH
418:ftHgÌŒ³µ³ñ
08/03/06 03:32:56
416¶áÈ¢¯Çshared_ptrÆ©¶áÈ¢Ì
419:ftHgÌŒ³µ³ñ
08/03/06 03:44:42
žÁÆO©ç auto_ptr Æ vector ÉæÁÄ delete ÌoÔÍÙÆñdzÈÁÄ¢éB
420:417
08/03/06 04:10:27
A»€¢€Ó¡Å©Bšá¢µÄœA³ñ«ãB
421:ftHgÌŒ³µ³ñ
08/03/06 06:12:17
Kx[WRNVÌÉ¢âÂÌ_Í èÜ·©?
œÆŠÎt@CÉ«o·œßÉ¡Ìobt@ðpÓµœÆµÄ
à€«Ýª¶µÈ¢Ÿë€Æ\ª³êœç«oµÄððú·éÆ¢€âÂÅ·
422:ftHgÌŒ³µ³ñ
08/03/06 06:15:54
100t@Cɫݪ ÁÄs·é€¿ÉÌ10%ÌÝ̫ݟ¯ÉÈÁœç
»êÈOͫݪȢŸë€ÆvÁÄðúµœ¢ÌÅ·ªA^C~Oð¢ÂÉ·é©ïÌIÉvZ·éû@Í
èÜ·©
423:ftHgÌŒ³µ³ñ
08/03/06 06:49:42
LRUÅ®®ê΢¢ñ¶áÈ¢H
424:ftHgÌŒ³µ³ñ
08/03/06 07:02:10
¿åÁÆá€ñÅ·
œÆŠÎobt@Í10ÂÈçA10ÂOªêÔâŷªA11ÂÚÌã
1`10Ôª±©àµêÈ¢¶áȢŷ©
àÁÆàp³êÈ©ÁœŸ¯ÅÍÈAobt@TCYðµœÙ€ª¢¢©à²×œ¢ñÅ·
425:ftHgÌŒ³µ³ñ
08/03/06 09:24:11
ÅIgpÔðL^µÆ¢ÄANbÈãgíêÄÈ©Áœçí
ƩŢ¢ñ¶áÈ¢?
426:ftHgÌŒ³µ³ñ
08/03/06 14:33:28
>>419
»êÁÄåâèÈñ¶áÈ©ÁœÁ¯H
427:ftHgÌŒ³µ³ñ
08/03/06 16:20:10
¿âŲޢܷB
int* A_PTR = new int[5];
ƵÄmÛµœÌæÌAœÆŠÎAA_PTR[3]Ìæ€ÈA
rÌÌæŸ¯ðúideletej·é±ÆÍÂ\ŵ倩H
428:ftHgÌŒ³µ³ñ
08/03/06 16:45:33
>>427
³
429:427
08/03/06 16:59:15
>>428
âÍè³ÈñÅ·ËB
ÊÌ|C^ÉüêÄ©çdeleteÈÇA
¢ë¢ëÀ±µÄ¢ÄCª¶¢»€ÅµœÌÅ
åÏ·Á«èµÜµœB
ê·A èªÆ€²Ž¢ÜµœB
430:ftHgÌŒ³µ³ñ
08/03/06 17:32:23
CString cstr;
unsigned char uc[sizeof(cstr)] = (unsigned char)(LPCSTR)cstr;
RpCÊèܹñBvÍA«ð®Iɵœ¢Å·B
unsigned char uc[10]="0123456789";
æëµšËª¢µÜ·
431:ftHgÌŒ³µ³ñ
08/03/06 17:39:19
zñÌTCYð®IÉÏŠéÌͳŷB
q[vÅæÁÄÇ¢ÌÈçA
char* uc = new char[¶ñÌ·³+1];
strcpy(uc, Rs[µœ¢¶ñÖÌ|C^)
ÅàµÄŸ³¢B
432:ftHgÌŒ³µ³ñ
08/03/06 17:41:23
±êÅÍŸßH
unsigned char* uc = (unsigned char*)(LPCSTR)cstr;
433:430
08/03/06 18:04:24
>>431
âÁÏè³Å·©BB
>>432
uc[0],uc[1]Ýœ¢ÉA|C^ÅÍÈzñƵÄANZXµœ¢ñÅ·æËBB
Èñ©ª{IÉÊÚÈ\[X¢ÄéCªµÄ«œÌÅAzðÏŠÄÝÜ·B
Ç€à èªÆ€²Ž¢ÜµœB
434:ftHgÌŒ³µ³ñ
08/03/06 18:06:06
®IÉ嫳ðÏŠœ¢Èçstd::vectorgŠÎ¢¢âñB
435:ftHgÌŒ³µ³ñ
08/03/06 18:06:34
A¶ñÈçstd::stringÈB
436:ftHgÌŒ³µ³ñ
08/03/06 18:09:14
>>433
YŠZqÍ|C^ÅàgŠé¯ÇB
437:ftHgÌŒ³µ³ñ
08/03/06 18:29:09
>>433
E1[E2] Í *((E1) + (E2)) Ì syntax sugar ŸB
uc[0] š *(uc + 0)
uc[1] š *(uc + 1)
438:ftHgÌŒ³µ³ñ
08/03/06 20:40:20
uc[0] š *(uc + 0) š *(0 + uc) š 0[uc]
uc[1] š *(uc + 1) š *(1 + uc) š 1[uc]
439:ftHgÌŒ³µ³ñ
08/03/06 20:43:02
>>438
³ñŽñùo
"0123456789ABCDEF"[i]
ðåÌÍâÁÄ¢œB
440:ftHgÌŒ³µ³ñ
08/03/06 20:44:58
»êÍÖWÈ¢Ÿë€EEEB
i["0123456789ABCDEF"] ÈçÆà©B
441:ftHgÌŒ³µ³ñ
08/03/06 20:48:59
>>440
šñȶâñ¯
442:ftHgÌŒ³µ³ñ
08/03/06 20:49:41
Ü```¢
443:389
08/03/06 22:58:20
ÝȳñFXÆAhoCX èªÆ€²Ž¢ÜµœB
>>408
ÊèÜ·BVisual Studio.NET 2003ðgÁÄÜ·B
>>412
_arr = new T*[_max];Æ¢€Ž¶ÅmÛµÄÜ·B
delete[] ÍgÁœ±ÆÈ¢Å·ªAâÁÄÝÜ·B
>>414
»êÍv¢Â«Ü¹ñŵœB
>>415
»Ì«ûÍßĩܵœB
>>416
10NOÆ¢€©ACŸênßÄÜŸPŒÈñÅ·ªBBB
444:ftHgÌŒ³µ³ñ
08/03/06 23:05:22
AŸAuÂÌi»Íni»ðJèÔ·v
445:ftHgÌŒ³µ³ñ
08/03/06 23:10:44
ȺÌR[hÅt@CÌ2ÔÚÌoCgŸ¯ð
«·Šæ€ÆµœñÅ·ª
Sœàãíèܹñ
#include <stdio.h>
int main(void){
FILE *fp;
char cIn;
char cOut = 'X';
int cnt;
fp = fopen("test.txt", "rb+");
fread(&cIn, 1, 1, fp);
printf("%c\n", cIn);
cnt = fwrite(&cOut, 1, 1, fp);
printf("%d\n", cnt);
fclose(fp);
return 0;
}
<test.txtÌàe«>
ABCDEFG
<oÍÊ«>
A
1
±êÍÇ€ðµœç¢¢ñŵ倩H
BCÆVCŵÄÝܵœ
446:ftHgÌŒ³µ³ñ
08/03/06 23:20:59
freadµÄAÇñÅA\еœ(oÍ1sÚ)
fwriteµÄÌBðXÅ㫵ÄA(test.txtÌgÏ»)
vfÌPªßÁÄ«Ä\Š(oÍ2sÚ)
œªsvcÈñŸH
447:ftHgÌŒ³µ³ñ
08/03/06 23:21:31
>>445
read©çwriteÉØèÖŠéAàµÍwrite©çreadÉØèÖŠéÍ
KžÔÉfseek()ð²ÞB
448:ftHgÌŒ³µ³ñ
08/03/06 23:39:54
>>445
RpCNÌÚâ«
ufreadÆfwriteÉgíȢź³¢æB ÆA«®ç¢ÁÄŸ³¢æB
œÅà©ñÅàÉ·©È¢Åº³¢æBÈñÅà©ñÅàvgɵȢų¢æB
韷éñŸÁœçÜÆàÉ韵ğ³¢æBmainÖÌø®ç¢gÁÄŸ³¢æv
449:ftHgÌŒ³µ³ñ
08/03/06 23:43:29
Visual@C++É¢ÄÈÌÅ·ªA
ªRpCÉ¢Ģܢ¿æí©èܹñB
main.ccp
ClassA.ccp
Def.h
ClassA.h
resource.h
Æ5Â ÁÄA
main.ccpÅÍDef.hªCN[hA
ClassA.hÅàDef.hªCN[h³êAClassÌéŸÆACCÅÌoÌè`A
ClassA.ccpÅÍClassA.hÆDef.hªCN[h³êĢܷB
ÜœADef.hÅÍresource.hªCN[h³êÄ¢éÙ©A#ifdnefðgÁÄd¡µÈ¢æ€ÉµÄ¢Ü·B
rhð·éÆAC2143\¶G[ÈÇAàÌ·²¢òRÌG[ªoīĵܢܷB
±Ìæ€Éwb_Æ\[Xt@Cðª·éêAÇÌæ€ÉCN[hð·êÎæ¢Ìŵ倩B
450:ftHgÌŒ³µ³ñ
08/03/06 23:48:48
> ClassA.ccpÅÍClassA.hÆDef.hªCN[h³êĢܷB
Æè Šž±ÌDef.hÍCN[hµÈÄ¢¢¢æ€ÈEEE
451:ftHgÌŒ³µ³ñ
08/03/06 23:49:48
>>449
»Ì¶ÊŸ¯ð©éÀèAt@CªÌµ©œàCN[hÌdû
àâèÈ¢æBG[ªoéÌÍt@CÌàeªÇ±©ÔáÁÄ¢é
Æ©Aœ©Ìè`ª«èȢƩB
452:ftHgÌŒ³µ³ñ
08/03/06 23:51:02
newðgÁÄmÛµœÌæð|C^ƵÄÔ·ÖðìÁœñÅ·¯ÇAJú·éÉÍÇ€·ê΢¢ñÅ·©H
ÂlIÉÍ«Ìû@Åū鿀ÈCª·éÌÅ·ªAÅ«é©Ç€©SzÈÌųŠÄŸ³¢
char *func(){
char *buf = new char[1024];
//bufÉf[^ðüêé
return buf;
}
int main(){
char *ptr = func()
//ptrÅ ñÈâ±ñÈ
delete [] ptr;
}
y[WÅVX\ŠXbhÌõÞXêbèÌj
[XšÜ©¹Xg¥IvVð\ŠÉÂÔµ2ch
5170úOÉXV/245 KB
S:undef