´æ´¢ÆÚstorage duration(extent)£¬ ָΪ¶ÔÏóÅäÖõÄÄÚ´æµÄ´æ»îÆÚ£¬±ÈÈçlocal extent
Éú´æ¿Õ¼äscope£¬Ö¸¶ÔÏóÔÚ³ÌÐòÄڵĴæ»îÇøÓò£¬¼´¿É±»·ÃÎʵķ¶Î§£¬±ÈÈçfile scope, static scope, local scope
C
local static object
º¯ÊýÄÚ²¿µÄobject£¬¾ßÓÐlocal scope£¬µ«ÊÇÿ´Îº¯Êý±»µ÷Óúó¸Ã¶ÔÏóµÄÄÚ´æ²»ÇåÀí£¬µ½Ï´ε÷Óû¹±£³ÖÔ×´
file static oject£¬static function
Ö»Óб»±àÒëÎļþµÄÉùÃ÷µãÖ®ºó²ÅÄÜʹÓøÃobjectºÍ¸Ãfunciton£¬´ïµ½Òþ²ØÍⲿ¶ÔÏóµÄÄ¿µÄ
C++
Ö±½Ó¶¨ÒåÔÚÎļþÖеıäÁ¿(ÎÞÂÛÊÇ·ñ¼Óstatic)£¬¾ßÓÐfile scope£¬¼´static scope£¬ÄÚ´æÒ»Ö±µ½³ÌÐò½áÊø²ÅÊÍ·Å
local static object
º¯ÊýÄÚ²¿µÄobject£¬¾ßÓÐlocal scope£¬µ«ÊÇÿ´Îº¯Êý±»µ÷Óúó¸Ã¶ÔÏóµÄÄÚ´æ²»ÇåÀí£¬µ½Ï´ε÷Óû¹±£³ÖÔ×´
static class member
classÄÚΨһµÄÒ»·Ý(¼´¸ú¶ÔÏóÎÞ¹Ø)£¬¿É¹²ÏíµÄ£¬member
const static class member
ͬstatic class member£¬µ«ÊÇ¿ÉÇÒ½ö¿ÉÔÚÉùÃ÷ʱ¸³Öµ
static class functions
²»´æÈ¡ÈκÎnon-static membersµÄº¯Êý
#pragma once
#include <string>
using namespace std;
class MyClass1
{
public:
MyClass1(void);
......
´æ´¢ÆÚstorage duration(extent)£¬ ָΪ¶ÔÏóÅäÖõÄÄÚ´æµÄ´æ»îÆÚ£¬±ÈÈçlocal extent
Éú´æ¿Õ¼äscope£¬Ö¸¶ÔÏóÔÚ³ÌÐòÄڵĴæ»îÇøÓò£¬¼´¿É±»·ÃÎʵķ¶Î§£¬±ÈÈçfile scope, static scope, local scope
C
local static object
º¯ÊýÄÚ²¿µÄobject£¬¾ßÓÐlocal scope£¬µ«ÊÇÿ´Îº¯Êý±»µ÷Óúó¸Ã¶ÔÏóµÄÄÚ´æ²»ÇåÀí£¬µ½Ï´ε÷Óû¹±£³ÖÔ×´
file static oject£¬static function
Ö»Óб»±àÒëÎļþµÄÉùÃ÷µãÖ®ºó²ÅÄÜʹÓøÃobjectºÍ¸Ãfunciton£¬´ïµ½Òþ²ØÍⲿ¶ÔÏóµÄÄ¿µÄ
C++
Ö±½Ó¶¨ÒåÔÚÎļþÖеıäÁ¿(ÎÞÂÛÊÇ·ñ¼Óstatic)£¬¾ßÓÐfile scope£¬¼´static scope£¬ÄÚ´æÒ»Ö±µ½³ÌÐò½áÊø²ÅÊÍ·Å
local static object
º¯ÊýÄÚ²¿µÄobject£¬¾ßÓÐlocal scope£¬µ«ÊÇÿ´Îº¯Êý±»µ÷Óúó¸Ã¶ÔÏóµÄÄÚ´æ²»ÇåÀí£¬µ½Ï´ε÷Óû¹±£³ÖÔ×´
static class member
classÄÚΨһµÄÒ»·Ý(¼´¸ú¶ÔÏóÎÞ¹Ø)£¬¿É¹²ÏíµÄ£¬member
const static class member
ͬstatic class member£¬µ«ÊÇ¿ÉÇÒ½ö¿ÉÔÚÉùÃ÷ʱ¸³Öµ
static class functions
²»´æÈ¡ÈκÎnon-static membersµÄº¯Êý
#pragma once
#include <string>
using namespace std;
class MyClass1
{
public:
MyClass1(void);
......
½ñÌì²Î¼Ó±ÊÊÔ,ÆäÖÐÓÐÁ½ÌâÊÇ·ÖÅäÄÚ´æµÄ,µÚÒ»ÌâÊǶ¯Ì¬·ÖÅäÒ»¸öһάÊý×é,µÚ¶þ¸öÌâÊǶ¯Ì¬·ÖÅäÒ»¸ö¶þάÊý×é.µÚÒ»ÌâºÍµÚ¶þÌâÎÒ·Ö±ðÊÇÕâÑùдµÄ:
/*µÚÒ»Ìâ*/
p=(float*)malloc(sizeof(float[M]));
/*µÚ¶þÌâ*/
p=(float*)malloc(sizeof(int[M][N]));
½á¹û˵ÎÒµÚ¶þÌâ´íÁË,ÎÒ»¹²»Ã÷°×´íÄÄÁË,ÎÒÓÖÎÊд³ÉM*N¶Ô²»,½á¹û»¹ÊÇ˵²»¶Ô.¸Õ²éÁËÒ»ÏÂ,¶þάÊý×éÓ¦¸Ã·Ö±ðµÚһάºÍµÚ¶þά·ÖÅä¿Õ¼ä,¶øÎÒÒ»´Î¾Í·ÖÅäÁË,ËùÒÔ´íÔÚÕâÀïÁË,ÕýÈ·µÄÓ¦¸ÃÕâÑù:
int i;
int **p;
p=(int*)malloc(sizeof(int)*M);/*¸øÐзÖÅä¿Õ¼ä*/
for(i=0;i<M;i++)
{
p[i]=(int*)malloc(sizeof(int)*N);/*¸øÁзÖÅä¿Õ¼ä*/
}
ÕûÌåÒâ˼¾ÍÊÇ·ÖÅäMÐÐ,ÿÐÐÓÐN¸öµ¥Ôª,¼´µÚһά¶¼ÊÇÖ¸ÏòN¸öµ¥ÔªµÄÖ¸Õë.
²Î¿¼:http://www.docin.com/p-2706237.html ......
½ñÌì²Î¼Ó±ÊÊÔ,ÆäÖÐÓÐÁ½ÌâÊÇ·ÖÅäÄÚ´æµÄ,µÚÒ»ÌâÊǶ¯Ì¬·ÖÅäÒ»¸öһάÊý×é,µÚ¶þ¸öÌâÊǶ¯Ì¬·ÖÅäÒ»¸ö¶þάÊý×é.µÚÒ»ÌâºÍµÚ¶þÌâÎÒ·Ö±ðÊÇÕâÑùдµÄ:
/*µÚÒ»Ìâ*/
p=(float*)malloc(sizeof(float[M]));
/*µÚ¶þÌâ*/
p=(float*)malloc(sizeof(int[M][N]));
½á¹û˵ÎÒµÚ¶þÌâ´íÁË,ÎÒ»¹²»Ã÷°×´íÄÄÁË,ÎÒÓÖÎÊд³ÉM*N¶Ô²»,½á¹û»¹ÊÇ˵²»¶Ô.¸Õ²éÁËÒ»ÏÂ,¶þάÊý×éÓ¦¸Ã·Ö±ðµÚһάºÍµÚ¶þά·ÖÅä¿Õ¼ä,¶øÎÒÒ»´Î¾Í·ÖÅäÁË,ËùÒÔ´íÔÚÕâÀïÁË,ÕýÈ·µÄÓ¦¸ÃÕâÑù:
int i;
int **p;
p=(int*)malloc(sizeof(int)*M);/*¸øÐзÖÅä¿Õ¼ä*/
for(i=0;i<M;i++)
{
p[i]=(int*)malloc(sizeof(int)*N);/*¸øÁзÖÅä¿Õ¼ä*/
}
ÕûÌåÒâ˼¾ÍÊÇ·ÖÅäMÐÐ,ÿÐÐÓÐN¸öµ¥Ôª,¼´µÚһά¶¼ÊÇÖ¸ÏòN¸öµ¥ÔªµÄÖ¸Õë.
²Î¿¼:http://www.docin.com/p-2706237.html ......
char dec2hexChar(short int n) {
if ( 0 <= n && n <= 9 ) {
return char( short('0') + n );
} else if ( 10 <= n && n <= 15 ) {
return char( short('A') + n - 10 );
} else {
return char(0);
}
}
short int hexChar2dec(char c) {
if ( '0'<=c && c<='9' ) {
return short(c-'0');
} else if ( 'a'<=c && c<='f' ) {
return ( short(c-'a') + 10 );
} else if ( 'A'<=c && c<='F' ) {
return ( short(c-'A') + 10 );
} else {
return -1;
}
}
string escapeURL(const string &URL)
{
string result = "";
for ( unsigned int i=0; i<URL.size(); i++ ) {
char c = URL[i];
if (
( '0'<=c && c<='9' ) ||
( 'a'<=c && c<='z' ) ||
( 'A'<=c && c<='Z' ) ||
&nb ......
¹þ¹þ£¡ÓÐÐÒÔÚÄ³ÍøÕ¾·¢ÏÖÕâÆªÎÄÕ£¬¶Á°Õ£¬¾õµÃÂùÓеÀÀí£¬·¢À´´ó¼ÒÒ»Æð¹²ÃãÖ®
×ÜÊDZ»Í¬Ñ§ÃÇÎʵ½£¬ÈçºÎѧϰCºÍC++²Å²»Ã£È»£¬²Å²»ÊÇÂÒѧ£¬ÏëÁËһϣ¬ÕâÀï¸ø³öÒ»¸ö×ܵĻظ´¡£
¡¡¡¡Ò»¼ÒÖ®ÑÔ£¬»¶ÓÅÄש¹þ¡£
¡¡¡¡1¡¢¿ÉÒÔ¿¼ÂÇÏÈѧϰC.
¡¡¡¡´ó¶àÊýʱºò£¬ÎÒÃÇѧϰÓïÑÔµÄÄ¿µÄ£¬²»ÊÇΪÁ˳ÉΪһ¸öÓïÑÔר¼Ò£¬¶øÊÇÏ£Íû³ÉΪһ¸ö½â¾öÎÊÌâµÄר¼Ò¡£×öÒ»¸öÓÐÓõijÌÐòÔ±£¬×öÒ»¸ö׬ǮµÄ³ÌÐòÔ±¡£ÎÒÃǵļÛÖµ£¬½«ÌåÏÖÔÚ¿Í»§¼ÛÖµÉÏ£¬¶ø²»ÊÇÓïÑÔдµÃºÃ²»ºÃ¿´¡£
¡¡¡¡C++ÊÇCµÄÒ»¸öÃæÏò¶ÔÏóµÄ½âÊÍ£¬C++ΪCÀ©³äÁË´ó¹æÄ£¹¤³ÌÓ¦Ó㬸´ÔÓµÄϵͳ½á¹¹µÄ×éÖ¯ºÍÕÆ¿Ø·½·¨£¬µ«ÊÇ£¬ÎÒÈÏΪ£¬C++¹Ç×ÓÀﻹÊÇCµÄ¡£
¡¡¡¡±Ï¾¹£¬½â¾ö¾ßÌåÎÊÌ⣬ÿ¸öº¯ÊýÄÚ²¿£¬¶¼ÊÇÓÃCµÄ·½Ê½Ð´³ÌÐò£¬»¹ÊÇÃæÏò¹ý³ÌµÄ¡£
¡¡¡¡Òò´Ë£¬ÏëҪѧϰºÃC++£¬ÎҵĽ¨Ò飬ÏÈѧϰC£¬ÏÈѧ½â¾öÎÊÌâµÄÄÜÁ¦£¬ÔÙÌÖÂÛ½â¾ö´óÎÊÌâµÄÄÜÁ¦¡£¾ÍÊÇÏÈѧϰÔõô×ß·£¬ÔÙѧϰÔõôÅܲ½¡£
¡¡¡¡2¡¢Ñ§Ï°CµÄ¹ý³ÌÖУ¬Ò»¶¨ÒªÀí½â½á¹¹»¯±à³Ì˼ά¡£
¡¡¡¡ÎªÊ²Ã´ÄØ£¬ÎÒÇ°ÃæÓÐÎÄÕÂ˵¹ý£¬Èí¼þÓïÑԵķ¢Õ¹¹ý³Ì£¬¾ÍÊÇÒ»¸öÊý¾Ý˽Óл¯µÄ¹ý³Ì£¬´óÐ͹¤³ÌÓ¦Óã¬Ç¿µ÷¸ßÄÚ¾Û£¬µÍñîºÏ£¬Ä£¿é»¯Éè¼Æ£¬±£³Ö´úÂë×î´óµÄÁé»îÐԺͰ²È«ÐÔ¡£
ÕâÊÇÏÖ´ú¹¤³Ì»¯¿ª·¢µÄºËÐĺÍÁé»ê¡£
¡¡¡¡Òò´Ë£¬ÀûÓ ......
¹þ¹þ£¡ÓÐÐÒÔÚÄ³ÍøÕ¾·¢ÏÖÕâÆªÎÄÕ£¬¶Á°Õ£¬¾õµÃÂùÓеÀÀí£¬·¢À´´ó¼ÒÒ»Æð¹²ÃãÖ®
×ÜÊDZ»Í¬Ñ§ÃÇÎʵ½£¬ÈçºÎѧϰCºÍC++²Å²»Ã£È»£¬²Å²»ÊÇÂÒѧ£¬ÏëÁËһϣ¬ÕâÀï¸ø³öÒ»¸ö×ܵĻظ´¡£
¡¡¡¡Ò»¼ÒÖ®ÑÔ£¬»¶ÓÅÄש¹þ¡£
¡¡¡¡1¡¢¿ÉÒÔ¿¼ÂÇÏÈѧϰC.
¡¡¡¡´ó¶àÊýʱºò£¬ÎÒÃÇѧϰÓïÑÔµÄÄ¿µÄ£¬²»ÊÇΪÁ˳ÉΪһ¸öÓïÑÔר¼Ò£¬¶øÊÇÏ£Íû³ÉΪһ¸ö½â¾öÎÊÌâµÄר¼Ò¡£×öÒ»¸öÓÐÓõijÌÐòÔ±£¬×öÒ»¸ö׬ǮµÄ³ÌÐòÔ±¡£ÎÒÃǵļÛÖµ£¬½«ÌåÏÖÔÚ¿Í»§¼ÛÖµÉÏ£¬¶ø²»ÊÇÓïÑÔдµÃºÃ²»ºÃ¿´¡£
¡¡¡¡C++ÊÇCµÄÒ»¸öÃæÏò¶ÔÏóµÄ½âÊÍ£¬C++ΪCÀ©³äÁË´ó¹æÄ£¹¤³ÌÓ¦Ó㬸´ÔÓµÄϵͳ½á¹¹µÄ×éÖ¯ºÍÕÆ¿Ø·½·¨£¬µ«ÊÇ£¬ÎÒÈÏΪ£¬C++¹Ç×ÓÀﻹÊÇCµÄ¡£
¡¡¡¡±Ï¾¹£¬½â¾ö¾ßÌåÎÊÌ⣬ÿ¸öº¯ÊýÄÚ²¿£¬¶¼ÊÇÓÃCµÄ·½Ê½Ð´³ÌÐò£¬»¹ÊÇÃæÏò¹ý³ÌµÄ¡£
¡¡¡¡Òò´Ë£¬ÏëҪѧϰºÃC++£¬ÎҵĽ¨Ò飬ÏÈѧϰC£¬ÏÈѧ½â¾öÎÊÌâµÄÄÜÁ¦£¬ÔÙÌÖÂÛ½â¾ö´óÎÊÌâµÄÄÜÁ¦¡£¾ÍÊÇÏÈѧϰÔõô×ß·£¬ÔÙѧϰÔõôÅܲ½¡£
¡¡¡¡2¡¢Ñ§Ï°CµÄ¹ý³ÌÖУ¬Ò»¶¨ÒªÀí½â½á¹¹»¯±à³Ì˼ά¡£
¡¡¡¡ÎªÊ²Ã´ÄØ£¬ÎÒÇ°ÃæÓÐÎÄÕÂ˵¹ý£¬Èí¼þÓïÑԵķ¢Õ¹¹ý³Ì£¬¾ÍÊÇÒ»¸öÊý¾Ý˽Óл¯µÄ¹ý³Ì£¬´óÐ͹¤³ÌÓ¦Óã¬Ç¿µ÷¸ßÄÚ¾Û£¬µÍñîºÏ£¬Ä£¿é»¯Éè¼Æ£¬±£³Ö´úÂë×î´óµÄÁé»îÐԺͰ²È«ÐÔ¡£
ÕâÊÇÏÖ´ú¹¤³Ì»¯¿ª·¢µÄºËÐĺÍÁé»ê¡£
¡¡¡¡Òò´Ë£¬ÀûÓ ......
´úÂ룺
#include <iostream>
using namespace std;
class Clock
{
int hour, minute, second;
public:
Clock(int h, int m, int s) //¹¹Ô캯Êý¶¨Òå £¬ÎÞ·µ»ØÖµÀàÐÍ
{
if(s<0) second=0;
if (s>=60) second =s%60;
else second=s;
if(m<0) minute=0;
if (m>=60) minute =m%60;
else minute=m;
if(h<0) hour=0;
if (h>=24) hour=h%24;
else hour=h;
}
void print(){ cout<<hour<<”:”<<minute<<”:”<<second<<endl; }
};
void main()
{
Clock aClock(100,100,200);
//´´½¨Ò»¸öClockÀàµÄ¶ÔÏóaClock
aClock.print(); //Àà³ÉÔ±º¯Êýµ÷ÓÃ
}
´íÎó£º
ÒÔÉÏ´úÂëµÄ ......
´úÂ룺
#include <iostream>
using namespace std;
class Clock
{
int hour, minute, second;
public:
Clock(int h, int m, int s) //¹¹Ô캯Êý¶¨Òå £¬ÎÞ·µ»ØÖµÀàÐÍ
{
if(s<0) second=0;
if (s>=60) second =s%60;
else second=s;
if(m<0) minute=0;
if (m>=60) minute =m%60;
else minute=m;
if(h<0) hour=0;
if (h>=24) hour=h%24;
else hour=h;
}
void print(){ cout<<hour<<”:”<<minute<<”:”<<second<<endl; }
};
void main()
{
Clock aClock(100,100,200);
//´´½¨Ò»¸öClockÀàµÄ¶ÔÏóaClock
aClock.print(); //Àà³ÉÔ±º¯Êýµ÷ÓÃ
}
´íÎó£º
ÒÔÉÏ´úÂëµÄ ......
Õ⼸ÌìÓÉÓÚÒª¶ÁÈ¡½Ï´óµÄÎı¾Îļþ£¬ËùÒԾͱȽÏÁËÒ»ÏÂÁ½ÕßÖ®¼äµÄЧÂÊÎÊÌâ¡£ ËùÒª¶ÁÈ¡µÄÎı¾Îļþ½á¹¹ÎªÃ¿ÐÐÓÉ5¸öÊý×é³É£¬int int int float int£¬²âÊÔµÄÎļþÓÐ33WÐУ¬´óСΪ9M¡£ÏÖÔÚÒª½«Æä¶Áµ½Ò»¸öcube½á¹¹ÌåÀïÃæÈ¥£¬½á¹¹ÌåÓÐ5¸ö³ÉÔ±±äÁ¿ÓëÖ®¶ÔÓ¦¡£ Á½ÖÖ²Ù×÷µÄ´úÂëÈçÏ start = clock();
while(1)
{
fscanf(fp,"%d %d %d %f %d",&tmpcube.x,&tmpcube.y,&tmpcube.z,&tmpcube.temp,&tmpcube.type);
cubes.push_back(tmpcube);
if (tmpcube.type == -1)
break;
}
end = clock(); start = clock();
while(1)
{
fp>>tmpcube.x>>tmpcube.y>>tmpcube.z>>tmpcube.temp>>tmpcube.type; ......