【快播報(bào)】為什么需要命名空間?使用命名空間解決名字沖突
??一、為什么需要命名空間(問(wèn)題提出)
命名空間是ANSIC++引入的可以由用戶(hù)命名的作用域,用來(lái)處理程序中常見(jiàn)的同名沖突。
在 C語(yǔ)言中定義了3個(gè)層次的作用域,即文件(編譯單元)、函數(shù)和復(fù)合語(yǔ)句。C++又引入了類(lèi)作用域,類(lèi)是出現(xiàn)在文件內(nèi)的。在不同的作用域中可以定義相同名字的變量,互不于擾,系統(tǒng)能夠區(qū)別它們。
(資料圖)
1、全局變量的作用域是整個(gè)程序,在同一作用域中不應(yīng)有兩個(gè)或多個(gè)同名的實(shí)體(enuty),包括變量、函數(shù)和類(lèi)等。
例:如果在文件中定義了兩個(gè)類(lèi),在這兩個(gè)類(lèi)中可以有同名的函數(shù)。在引用時(shí),為了區(qū)別,應(yīng)該加上類(lèi)名作為限定:
class A//聲明A類(lèi)
{public:
void funl();//聲明A類(lèi)中的funl函數(shù)
private:
int i; };
void A::funl() //定義A類(lèi)中的funl函數(shù)
{…………}
class B //聲明B類(lèi)
{public:
void funl(); //B類(lèi)中也有funl函數(shù)
void fun2(); };
void B::funl() //定義B類(lèi)中的funl函數(shù)
{ …………}
這樣不會(huì)發(fā)生混淆。
在文件中可以定義全局變量(global variable),它的作用域是整個(gè)程序。如果在文件A中定義了一個(gè)變量aint a=3;
在文件B中可以再定義一個(gè)變量aint a=5;
在分別對(duì)文件A和文件B進(jìn)行編譯時(shí)不會(huì)有問(wèn)題。但是,如果一個(gè)程序包括文件A和文件B,那么在進(jìn)行連接時(shí),會(huì)報(bào)告出錯(cuò),因?yàn)樵谕粋€(gè)程序中有兩個(gè)同名的變量,認(rèn)為是對(duì)變量的重復(fù)定義。
可以通過(guò)extern聲明同一程序中的兩個(gè)文件中的同名變量是同一個(gè)變量。如果在文件B中有以下聲明:
extem int a;
表示文件B中的變量a是在其他文件中已定義的變量。由于有此聲明,在程序編譯和連接后,文件A的變量a的作用域擴(kuò)展到了文件B。如果在文件B中不再對(duì)a賦值,則在文件B中用以下語(yǔ)句輸出的是文件A中變量a的值: cout<<A; 得到a的值為3<="" p="">
2、程序中就會(huì)出現(xiàn)名字沖突。
在簡(jiǎn)單的程序設(shè)計(jì)中,只要人們小心注意,可以爭(zhēng)取不發(fā)生錯(cuò)誤。但是,一個(gè)大型的應(yīng)用軟件,往往不是由一個(gè)人獨(dú)立完成的,而是由若干人合作完成的,不同的人分別完成不同的部分,最后組合成一個(gè)完整的程序。假如不同的人分別定義了類(lèi),放在不同的頭文件中,在主文件(包含主函數(shù)的文件)需要用這些類(lèi)時(shí),就用#include命令行將這些頭文件包含進(jìn)來(lái)。由于各頭文件是由不同的人設(shè)計(jì)的,有可能在不同的頭文件中用了相同的名字來(lái)命名所定義的類(lèi)或函數(shù)。
例4 名字沖突
程序員甲在頭文件headerl.h中定義了類(lèi) Student和函數(shù)fun。
// 例4中的頭文件header1(頭文件1,沒(méi)其文件名為cc8-4-h1.h)
#include
#include
using namespace std;
class Student //聲明Student類(lèi)
{public:
Student(int n,string nam,int a)
{num=n;name=nam;age=a;}
void get_data();
private:
int num;
string name;
int age; };
void Student::get_data() //成員函數(shù)定義
{ cout<<NUM<<" p="" ?<<name<double fun(double a,double b)//定義全局函數(shù)(即外部函數(shù))
{ return sqrt(a+b);}
在 main函數(shù)所在的文件中包含頭文件headerl.h:
#include
using namespace std;
#include "header1.h" //注意要用雙引號(hào),因?yàn)槲募话闶欠旁谟糜脩?hù)目錄中的
int main()
{Student stud1(101,"Wang",18); //定義類(lèi)對(duì)象studl
stud1.get_data();
cout<<FUN(5,3)<<ENDL;< p="">
return 0; }
程序 能正常運(yùn)行,輸出為
101 Wang 18
2.82843
如果程序員乙寫(xiě)了頭文件header2.h,在其中除了定義其他類(lèi)以外,還定義了類(lèi)Student和函數(shù)fun,但其內(nèi)容與頭文件headerl.h中的 Student和函數(shù)fun有所不同。
// 例4中的頭文件header2
#include
#include
using namespace std;
class Student //聲明Student類(lèi)
{ public:
Student(int n,string nam,char s) //參數(shù)與headerl中的student不同
{ num=n;name=nam;sex=s;}
void get_data();
private:
int num;
string name;
char sex; };//此項(xiàng)與headerl不同
void Student::get_data() //成員函數(shù)定義
{ cout<<NUM<<" p="" ?<<name<
double fun(double a,double b) //定義全局函數(shù)
{ return sqrt(a-b);} //返回值與headerl中的fun函數(shù)不同
//頭文件2中可能還有其他內(nèi)容
假如主程序員在其程序中要用到headerl.h中的Student和函數(shù)fun,因而在程序中包含了頭文件headerl.h,同時(shí)要用到頭文件 header2.h中的一些內(nèi)容(但對(duì)header2.h中包含與headerl.h中的Student類(lèi)和fun函數(shù)同名而內(nèi)容不同的類(lèi)和函數(shù)并不知情,因?yàn)樵谝粋€(gè)頭文件中往往包含許多不同的信息,而使用者往往只關(guān)心自己所需要的部分,而不注意其他內(nèi)容),因而在程序中又包含了頭文件 header2.h。如果主文件(包含主函數(shù)的文件)如下:
#include
using namespace std;
#include "header1.h"http://包含頭文件l
#include "header2.h"http://包含頭文件2
int main()
{ Student stud1(101,"Wang",18);
stud1.get_data();
cout<<FUN(5,3)<<ENDL;< p="">
return 0; }
這時(shí)程序編譯就會(huì)出錯(cuò)。因?yàn)樵陬A(yù)編譯后,頭文件中的內(nèi)容取代了對(duì)應(yīng)的#include命令行,這樣就在同一個(gè)程序文件中出現(xiàn)了兩個(gè)Student類(lèi)和兩個(gè) fun函數(shù),顯然是重復(fù)定義,這就是名字沖突,即在同一個(gè)作用域中有兩個(gè)或多個(gè)同名的實(shí)體。
3、全局命名空間污染(global namespace pollution)。
在程序中還往往需要引用一些庫(kù)(包括C++編譯系統(tǒng)提供的庫(kù)、由軟件開(kāi)發(fā)商提供的庫(kù)或者用戶(hù)自己開(kāi)發(fā)的庫(kù)),為此需要包含有關(guān)的頭文件。如果在這些庫(kù)中包含有與程序的全局實(shí)體同名的實(shí)體,或者不同的庫(kù)中有相同的實(shí)體名,則在編譯時(shí)就會(huì)出現(xiàn)名字沖突。
為了避免這類(lèi)問(wèn)題的出現(xiàn),人們提出了許多方法,例如:將實(shí)體的名字寫(xiě)得長(zhǎng)—些(包含十幾個(gè)或幾十個(gè)字母和字符);把名字起得特殊一些,包括一些特殊的字符;由編譯系統(tǒng)提供的內(nèi)部全局標(biāo)識(shí)符都用下劃線作為前綴,如_complex(),以避免與用戶(hù)命名的實(shí)體同名;由軟件開(kāi)發(fā)商提供的實(shí)體的名字用特定的字符作為前綴。但是這樣的效果并不理想,而且增加了閱讀程序的難度,可讀性降低了。
C 語(yǔ)言和早期的C++語(yǔ)言沒(méi)有提供有效的機(jī)制來(lái)解決這個(gè)問(wèn)題,沒(méi)有使庫(kù)的提供者能夠建立自己的命名空間的工具。人們希望ANSI C++標(biāo)準(zhǔn)能夠解決這個(gè)問(wèn)題,提供—種機(jī)制、一種工具,使由庫(kù)的設(shè)計(jì)者命名的全局標(biāo)識(shí)符能夠和程序的全局實(shí)體名以及其他庫(kù)的全局標(biāo)識(shí)符區(qū)別開(kāi)來(lái)。
二、什么是命名空間(解 決方案)
命名空間:實(shí)際上就是一個(gè)由程序設(shè)計(jì)者命名的內(nèi)存區(qū)域,程序設(shè)計(jì)者可以根據(jù)需要指定一些有名字的空間域,把一些全局實(shí)體分別放在各個(gè)命名空間中,從而與其他全局實(shí)體分隔開(kāi)來(lái)。
如: namespace ns1 //指定命名中間nsl
{ int a;
double b; }
namespace 是定義命名空間所必須寫(xiě)的關(guān)鍵字,nsl 是用戶(hù)自己指定的命名空間的名字(可以用任意的合法標(biāo)識(shí)符,這里用ns1是因?yàn)閚s是namespace的縮寫(xiě),含義請(qǐng)楚),在花括號(hào)內(nèi)是聲明塊,在其中聲明的實(shí)體稱(chēng)為命名空間成員(namespace member)。現(xiàn)在命名空間成員包括變量a和b,注意a和b仍然是全局變量,僅僅是把它們隱藏在指定的命名空間中而已。如果在程序中要使用變量a和b,必須加上命名空間名和作用域分辨符“::”,如nsl::a,nsl::b。這種用法稱(chēng)為命名空間限定(qualified),這些名字(如nsl::a)稱(chēng)為被限定名 (qualified name)。C++中命名空間的作用類(lèi)似于操作系統(tǒng)中的目錄和文件的關(guān)系,由于文件很多,不便管理,而且容易重名,于是人們?cè)O(shè)立若干子目錄,把文件分別放到不同的子目錄中,不同子目錄中的文件可以同名。調(diào)用文件時(shí)應(yīng)指出文件路徑。
命名空間的作用:是建立一些互相分隔的作用域,把一些全局實(shí)體分隔開(kāi)來(lái)。以免產(chǎn)生老點(diǎn)名叫李相國(guó)時(shí),3個(gè)人都站起來(lái)應(yīng)答,這就是名字沖突,因?yàn)樗麄儫o(wú)法辨別老師想叫的是哪一個(gè)李相國(guó),同名者無(wú)法互相區(qū)分。為了避免同名混淆,學(xué)校把3個(gè)同名的學(xué)生分在3個(gè)班。這樣,在小班點(diǎn)名叫李相國(guó)時(shí),只會(huì)有一個(gè)人應(yīng)答。也就是說(shuō),在該班的范圍(即班作用域)內(nèi)名字是惟一的。如果在全校集合時(shí)校長(zhǎng)點(diǎn)名,需要在全校范圍內(nèi)找這個(gè)學(xué)生,就需要考慮作用域問(wèn)題。如果校長(zhǎng)叫李相國(guó),全校學(xué)生中又會(huì)有3人一齊喊“到”,因?yàn)樵谕蛔饔糜蛑写嬖?個(gè)同名學(xué)生。為了在全校范圍內(nèi)區(qū)分這3名學(xué)生,校長(zhǎng)必須在名字前加上班號(hào),如高三甲班的李相國(guó),或高三乙班的李相國(guó),即加上班名限定。這樣就不致產(chǎn)生混淆。
可以根據(jù)需要設(shè)置許多個(gè)命名空間,每個(gè)命名空間名代表一個(gè)不同的命名空間域,不同的命名空間不能同名。這樣,可以把不同的庫(kù)中的實(shí)體放到不同的命名空間中,或者說(shuō),用不同的命名空間把不同的實(shí)體隱蔽起來(lái)。過(guò)去我們用的全局變量可以理解為全局命名空間,獨(dú)立于所有有名的命名空間之外,它是不需要用 namespace聲明的,實(shí)際上是由系統(tǒng)隱式聲明的,存在于每個(gè)程序之中。
在聲明一個(gè)命名空間時(shí),花括號(hào)內(nèi)不僅可以包括變量,而且還可以包括以下類(lèi)型:
·變量(可以帶有初始化);
·常量;
·數(shù)(可以是定義或聲明);
·結(jié)構(gòu)體;
·類(lèi);
·模板;
·命名空間(在一個(gè)命名空間中又定義一個(gè)命名空間,即嵌套的命名空間)。
例如
namespace nsl
{const int RATE=0.08; //常量
doublepay;//變量
doubletax()//函數(shù)
{return a*RATE;}
namespacens2//嵌套的命名空間
{int age;}
}
如果想輸出命名空間nsl中成員的數(shù)據(jù),可以采用下面的方法:
cout<<nsl::rate<<endl;< p="">
cout<<nsl::pay<<endl;< p="">
cout<<nsl::tax()<<endl;< p="">
cout<<nsl::ns2::age<<endl; p="" 需要指定外層的和內(nèi)層的命名中間名<="">
可以看到命名空間的聲明方法和使用方法與類(lèi)差不多。但它們之間有一點(diǎn)差別:在聲明類(lèi)時(shí)在右花括號(hào)的后面有一分號(hào),而在定義命名空間時(shí),花括號(hào)的后面沒(méi)有分號(hào)。
三、使用命名空間解決名字沖突(使用指南)
有了以上的基礎(chǔ)后,就可以利用命名空間來(lái)解決名字沖突問(wèn)題。現(xiàn)在,對(duì)例4程序進(jìn)行修改,使之能正確運(yùn)行。
例5 利用命名空間來(lái)解決例4程序名字沖突問(wèn)題。
修改兩個(gè)頭文件,把在頭文件中聲明的類(lèi)分別放在兩個(gè)不同的命名空間中。
//例8.5中的頭文件1,文件名為header1.h
using namespace std;
#include
#include
namespace ns1 //聲明命名空間ns1
{ class Student //在命名空間nsl內(nèi)聲明Student類(lèi)
{ public:
Student(int n,string nam,int a)
{ num=n;name=nam;age=a;}
void get_data();
private:
int num;
string name;
int age; };
void Student::get_data() //定義成員函數(shù)
{ cout<<NUM<<" p="" ?<<name<
double fun(double a,double b) //在命名空間n引內(nèi)定義fun函數(shù)
{ return sqrt(a+b);}
}
//例 8.5中的頭文件2,文件名為header2.h
#include
#include
namespace ns2 //聲明命名空間ns2
{ class Student
{ public:
Student(int n,string nam,char s)
{ num=n;name=nam;sex=s;}
void get_data();
private:
int num;
string name;
char sex; };
void Student::get_data()
{ cout<<NUM<<" p="" ?<<name<
double fun(double a,double b)
{ return sqrt(a-b);}
}
//main file
#include
#include "header1.h" //包含頭文件l
#include "header2.h" //包含頭文件2
int main()
{ ns1::Student stud1(101,"Wang",18);//用命名空間nsl中聲明的Student類(lèi)定義studt
stud1.get_data(); //不要寫(xiě)成ns1::studl.get_data();
cout<<ns1::fun(5,3)<<endl; p="" 調(diào)用命名空間ns1中的fun函數(shù)<="">
ns2::Student stud2(102,"Li","f"); //用命名空間ns2中聲明的 Student類(lèi)定義stud2
stud2.get_data();
cout<<ns2::fun(5,3)<<endl; p="" 調(diào)用命名空間nsl,中的fun函數(shù)<="">
return 0; }
解決本題的關(guān)鍵是建立了兩個(gè)命名空間nsl和ns2,將原來(lái)在兩個(gè)頭文件中聲叫的類(lèi)分別放在命名空間nsl和ns2中。注意:在頭文件中,不要把#include命令放在命名空間中,在上一小節(jié)的敘述中可以知道,命名空間中的內(nèi)容不包括命令行,否則編譯會(huì)出錯(cuò)。
分析例4程序出錯(cuò)的原因是:在兩個(gè)頭文件中有相同的類(lèi)名Student和相同的函數(shù)名fun,在把它們包含在主文件中時(shí),就產(chǎn)生名字沖突,存在重復(fù)定義。編譯系統(tǒng)無(wú)法辨別用哪一個(gè)頭文件中的Student來(lái)定義對(duì)象studl。現(xiàn)在兩個(gè)Student和fun分別放在不同的命名空間中,各自有其作用域,互不相干。由于作用域不相同,不會(huì)產(chǎn):生名字沖突。正如同在兩個(gè)不同的類(lèi)中可以有同名的變量和函數(shù)而不會(huì)產(chǎn)生沖突一樣。
在定義對(duì)象時(shí)用ns1::Student(命名空間nsl中的Student)來(lái)定義studl,用ns2::Student(命名空間ns2中的 Student)來(lái)定義stud2。顯然,nsl::Student和ns2::Student是兩個(gè)不同的類(lèi),不會(huì)產(chǎn)生混淆。同樣,在調(diào)用fun函數(shù)時(shí)也需要用命名空間名ns]或ns2加以限定。ns1::fun()和ns2::fun()是兩個(gè)不同的函數(shù)。注意:對(duì)象studl是用 nsl::Student定義的,但對(duì)象studl并不在命名空間nsl中。studl的作用域?yàn)閙ain函數(shù)范圍內(nèi)。在調(diào)用對(duì)象studl的成員函數(shù) get_data時(shí),應(yīng)寫(xiě)成studl.get_data(),而不應(yīng)寫(xiě)成nsl::studl.get_data()。
程序 能順利通過(guò)編譯,并得到以下運(yùn)行結(jié)果:
101 Wang l9 (對(duì)象studl中的數(shù)據(jù))
2.82843 (/5+3的值)
102 Li f (對(duì)象studg中的數(shù)據(jù))
1.41421 (/5-2的值)
四、使用命名空間成員的方法
從上面的介紹可以知道,在引用命名空間成員時(shí),要用命名空間名和作用域分辨符對(duì)命名空間成員進(jìn)行限定,以區(qū)別不同的命名空間中的同名標(biāo)識(shí)符。即:
命名空間名::命名空間成員名
這種方法是有效的,能保證所引用的實(shí)體有惟一的名字。但是如果命名空間名字比較長(zhǎng),尤其在有命名空間嵌套的情況下,為引用一個(gè)實(shí)體,需要寫(xiě)很長(zhǎng)的名字。在一個(gè)程序中可能要多次引用命名空間成員,就會(huì)感到很不方便。
1 、使用命名空間別名
可以為命名空間起一個(gè)別名(namespace alias),用來(lái)代替較長(zhǎng)的命名空間名。如
namespace Television //聲明命名空間,名為T(mén)elevision
{ ... }
可以用一個(gè)較短而易記的別名代替它。如:
namespace TV=Television; //別名TV與原名Television等價(jià)
也可以說(shuō),別名TV指向原名Television,在原來(lái)出現(xiàn)Television的位置都可以無(wú)條件地用TV來(lái)代替。
2、使用using命名空間成員名
using后面的命名空間成員名必須是由命名空間限定的名字。例如:
using nsl::Student;
以上語(yǔ)句聲明:在本作用域(using語(yǔ)句所在的作用域)中會(huì)用到命名空間ns1中的成員Student,在本作用域中如果使用該命名空間成員時(shí),不必再用命名空間限定。例如在用上面的using聲明后,在其后程序中出現(xiàn)的Student就是隱含地指nsl::Student。
using聲明的有效范圍是從using語(yǔ)句開(kāi)始到using所在的作用域結(jié)束。如果在以上的using語(yǔ)句之后有以下語(yǔ)句:
Student studl(101,"Wang",18); //此處的Student相當(dāng)于ns1::Student
上面的語(yǔ)句相當(dāng)于
nsl::Student studl(101,"Wang",18);
又如
using nsl::fun; //聲明其后出現(xiàn)的fun是屬于命名空間nsl中的fun
cout<<FUN(5,3)<<ENDL; p="" 此處處的fun函數(shù)相當(dāng)于nsl::fun(5,3)<="">
顯然,這可以避免在每一次引用命名空間成員時(shí)都用命名空間限定,使得引用命名空間成員變得方便易用。
但是要注意:在同一作用域中用using聲明的不同命名空間的成員中不能有同名的成員。例如:
usmgnsl::Student; //聲明其后出現(xiàn)的Student是命名空間nsl中的Student
usmgns2::Student; //聲明其后出現(xiàn)的Student是命名空間ns2小的Student
Student stud1; //請(qǐng)問(wèn)此處的Student是哪個(gè)命名中間中的Student?
產(chǎn)生了二義性,編譯出錯(cuò)。
3、使用using namespace命名空間名
用上面介紹的using命名空間成員名,一次只能聲明一個(gè)命名空間成員,如果在一個(gè)命名空間中定義了10個(gè)實(shí)體,就需要使用10次using命名空間成員名。能否在程序中用一個(gè)語(yǔ)句就能一次聲明一個(gè)命名空間中的全部成員呢?
C++提供了using namespace語(yǔ)句來(lái)實(shí)現(xiàn)這一目的。using namespace語(yǔ)句的一般格式為
using namespace 命名空間名;
例如
using nanlespace nsl;
聲明了在本作用域中要用到命名空間nsl中的成員,在使用該命名空間的任何成員時(shí)都不必用命名空間限定。如果在作了上面的聲明后有以下語(yǔ)句:
Student studl(101,”Wang”,18); //Student隱含指命名中間nsl中的Student
cout<<FUN(5,3)<<ENDL; p="" 這里的fun函數(shù)是命名中間="" nsl中的fun函數(shù)<="">
在用usmgnamespace聲明的作用域中,命名空間nsl的成員就好像在全局域聲明的一樣。因此可以不必用命名空間限定。顯然這樣的處理對(duì)寫(xiě)程序比較方便。但是如果同時(shí)用usingnamespace聲明多個(gè)命名空間時(shí),往往容易出錯(cuò)。例5中的main函數(shù)如果用下面程序段代替,就會(huì)出錯(cuò)。
int main()
{ using namespace nsl;//聲明nsl中的成員在本作用域中可用
using namespace ns2;//聲明ns2中的成員在本作用域中可用
Student studl(101,”Wang",18);
studl.8ct_data();
cout<<FUN(5,3)<<ENDL;< p="">
Student stud2(102,"Li","r");
stud2.get_data();
coutt<<FUN(5,3)<<ENDL;< p="">
return O; }
因?yàn)樵谕蛔饔糜蛑型瑫r(shí)引入了兩個(gè)命名空間nsl和ns2,其中有同名的類(lèi)和函數(shù)。在出現(xiàn)Student時(shí),無(wú)法判定是哪個(gè)命名空間中的 Student,出現(xiàn)二義性,編譯出錯(cuò)。因此只有在使用命名空間數(shù)量很少,以及確保這些命名空間中沒(méi)有同名成員時(shí)才用using namespace語(yǔ)句。
五、無(wú)名的命名空間
以上介紹的是有名字的命名空間,C++還允許使用沒(méi)有名字的命名空間,如在文件A中聲明了以下的無(wú)名命名空間:
namespace //命名空間沒(méi)有名字
{ void fun( ) //定 義命名空間成員
{ cout<<"OK."<<ENDL;}< p="">
}
由于命名空間沒(méi)有名字,在其他文件中顯然無(wú)法引用,它只在本文件的作用域內(nèi)有效。無(wú)名命名空間的成員fun函數(shù)的作用域?yàn)槲募嗀(確切地說(shuō),是從聲明無(wú)名命名空間的位置開(kāi)始到文件A結(jié)束)。在文件A中使用無(wú)名命名空間的成員,不必(也無(wú)法)用命名空間名限定。
如果 在文件A中有以下語(yǔ)句:
fun();
則執(zhí)行無(wú)名命名空間中的成員fun函數(shù),輸出”O(jiān)K.”。
在本程序中的其他文件中也無(wú)法使用該fun函數(shù),也就是把fun函數(shù)的作用域限制在本文件范圍中。可以聯(lián)想到:在C浯言中可以用static聲明一個(gè)函數(shù),其作用也是使該函數(shù)的作用域限于本文件。C++保留了用static聲明函數(shù)的用法,同時(shí)提供了用無(wú)名命名空間來(lái)實(shí)現(xiàn)這一功能。隨著越來(lái)越多的C++ 編譯系統(tǒng)實(shí)現(xiàn)了ANSI C++建議的命名空間的機(jī)制,相信使用無(wú)名命名空間成員的方法將會(huì)取代以前習(xí)慣用的對(duì)全局變量的靜態(tài)聲明。
六、標(biāo)準(zhǔn)命名空間std
為了解決C++標(biāo)準(zhǔn)庫(kù)中的標(biāo)識(shí)符與程序中的全局標(biāo)識(shí)符之間以及不同庫(kù)中的標(biāo)識(shí)符之間的同名沖突,應(yīng)該將不同庫(kù)的標(biāo)識(shí)符在不同的命名空間中定義(或聲明)。標(biāo)準(zhǔn)C++庫(kù)的所有的標(biāo)識(shí)符都是在一個(gè)名為std的命名空間中定義的,或者說(shuō)標(biāo)準(zhǔn)頭文件(如iostream)中函數(shù)、類(lèi)、對(duì)象和類(lèi)模板是在命名空間 std中定義的。std是standard(標(biāo)準(zhǔn))的縮寫(xiě),表示這是存放標(biāo)準(zhǔn)庫(kù)的有關(guān)內(nèi)容的命名空間,含義請(qǐng)楚,不必死記。
這樣,在程序中用到C++標(biāo)準(zhǔn)庫(kù)時(shí),需要使用std作為限定。如
std::cout<<"OK."<<ENDL; p="" 聲明cout是在命名空間std中定義的流對(duì)象<="">
在有的C++書(shū)中可以看到這樣的用法。但是在每個(gè)cout,cm以及其他在std中定義的標(biāo)識(shí)符前面都用命名空間std作為限定,顯然是很不方便的。在大多數(shù)的C++程序中常用usmgnamespace語(yǔ)句對(duì)命名空間std進(jìn)行聲明,這樣可以不必對(duì)每個(gè)命名空間成員一進(jìn)行處理,在文件的開(kāi)頭加入以下 using namespace聲明:
using namespace std;
這樣,在std中定義和聲明的所有標(biāo)識(shí)符在本文件中都可以作為全局量來(lái)使用。但是應(yīng)當(dāng)絕對(duì)保證在程序中不出現(xiàn)與命名空間std的成員同名的標(biāo)識(shí)符,例如在程序中不能再定義一個(gè)名為cout的對(duì)象。由于在命名空間std中定義的實(shí)體實(shí)在太多,有時(shí)程序設(shè)計(jì)人員也弄不請(qǐng)哪些標(biāo)識(shí)符已在命名空間std中定義過(guò),為減少出錯(cuò)機(jī)會(huì),有的專(zhuān)業(yè)人員喜歡用若干個(gè)"using命名空間成員”聲明來(lái)代替“using namespace命名空間”聲明,如
using Std::string;
using Std::cout;
using Std::cin;
等。為了減少在每一個(gè)程序中都要重復(fù)書(shū)寫(xiě)以亡的using聲明,程序開(kāi)發(fā)者往往把編寫(xiě)應(yīng)用程序時(shí)經(jīng)常會(huì)用到的命名空間std成員的usmg聲明組成一個(gè)頭文件,然后在程序中包含此頭文件即可。
如果閱讀了多種介紹C++的書(shū),可能會(huì)發(fā)現(xiàn)有的書(shū)的程序中有using namespace語(yǔ)句,有的則沒(méi)有。有的讀者會(huì)提出:究竟應(yīng)該有還是應(yīng)該沒(méi)有?應(yīng)當(dāng)說(shuō):用標(biāo)準(zhǔn)的C++編程,是應(yīng)該對(duì)命名空間std的成員進(jìn)行聲明或限定的(可以采取前面介紹過(guò)的任一種方法)。但是目前所用的C++庫(kù)大多是幾年前開(kāi)發(fā)的,當(dāng)時(shí)并沒(méi)有命名空間,庫(kù)中的有關(guān)內(nèi)容也沒(méi)有放在std命名空間中,因而在程序中不必對(duì)std進(jìn)行聲明。
七、使用早期的函數(shù)庫(kù)
C語(yǔ)言程序中各種功能基本上都是由函數(shù)來(lái)實(shí)現(xiàn)的,在C語(yǔ)言的發(fā)展過(guò)程中建立了功能豐富的函數(shù)庫(kù),C++從C語(yǔ)言繼承了這份寶貴的財(cái)富。在C++程序中可以使用C語(yǔ)言的函數(shù)庫(kù)。
如果要用函數(shù)庫(kù)中的函數(shù),就必須在程序文件中包含有關(guān)的頭文件,在不同的頭文件中,包含了不同的函數(shù)的聲明。
在C++中使用這些 頭文件有兩種方法。
1、用C語(yǔ)言的傳統(tǒng)方法
頭文件名包括后綴.h,如stdio.h,math.h等。由于C語(yǔ)言沒(méi)有命名空間,頭文件并不存放在命名空間中,因此在C++程序文件中如果用到帶后綴.h的頭文件時(shí),不必用命名空間。只需在文件中包含所用的頭文件即可。如
#include
2、用C++的新方法
C++標(biāo)準(zhǔn)要求系統(tǒng)提供的頭文件不包括后綴.h,例如iostream、string。為了表示與C 語(yǔ)言的頭文件有聯(lián)系又有區(qū)別,C++所用的頭文件名是在C語(yǔ)言的相應(yīng)的頭文件名(但不包括后綴.h)之前加一字母c。例如,C語(yǔ)言中有關(guān)輸入與輸出的頭文件名為stdio.h在C++中相應(yīng)的頭文件名為cstdio。C語(yǔ)言中的頭文件math.h,在C++中相應(yīng)的頭文什名為cmath。C語(yǔ)言中的頭文件 string.h在C++中相應(yīng)的頭文件名為cstring。注意在C++中,頭文件cstnng和頭文件strmg不是同一個(gè)文件。前者提供C語(yǔ)言中對(duì)字符串處理的有關(guān)函數(shù)(如strcmp,ctrcpy)的聲明,后者提供C++中對(duì)字符串處理的新功能。
此外,由于這些函數(shù)都是在命名空間std中聲明的,因此在程序中要對(duì)命名空間std作聲明。如:
#include
#include
using namespace std;
目前所用的大多數(shù)C++編譯系統(tǒng)既保留了c的用法,又提供丁C++的新方法。下面兩種用法等價(jià),可以任選。
C傳 統(tǒng)方法 C++新方法
#include #include
#include #include
#include #include
using namespace std;
可以使用傳統(tǒng)的c方法,但應(yīng)當(dāng)提倡使用C++的新方法。
標(biāo)簽:
相關(guān)推薦:
精彩放送:
- []回顧歷史事件:首臺(tái)通用電子計(jì)算機(jī)的發(fā)明者誕生 谷歌推出第一個(gè)涂鴉
- []全球熱頭條丨ABAP自定義截取字符串長(zhǎng)度函數(shù) 截取字符串長(zhǎng)度的函數(shù)
- []【快播報(bào)】為什么需要命名空間?使用命名空間解決名字沖突
- []pps是什么格式?洪恩MDF格式用什么軟件打開(kāi)?
- []【獨(dú)家】html常用長(zhǎng)度度量單位 度量長(zhǎng)度的單位是什么?
- []
為什么要使用框架?使用軟件框架的優(yōu)點(diǎn)總結(jié) - []12月9日科拓生物漲停分析:幽門(mén)螺桿菌概念,食品,寵物經(jīng)濟(jì)概念熱股
- []招行信用卡旗下App全新上線 掌上生活9.0體驗(yàn)究竟如何
- []26.4%!晶科能源182TOPCon電池轉(zhuǎn)換效率再創(chuàng)新高
- []王亞平女兒眼中的“航天女英雄”竟然是這樣的!
- []WotoKOL臥兔周年,深耕海外網(wǎng)紅營(yíng)銷(xiāo)五載
- []今日觀點(diǎn)!世茂股份擬召開(kāi)債券持有人會(huì)議,所有存續(xù)公司債12月9日開(kāi)市起停牌
- []多家房企拋出股權(quán)融資方案 地產(chǎn)行業(yè)困境反轉(zhuǎn)?
- []消息!又一家大行看多!摩根士丹利:中國(guó)股票將跑贏全球
- []金溢科技:關(guān)于股東人數(shù)情況,詳見(jiàn)公司最近一期定期報(bào)告
- []格力地產(chǎn)調(diào)整重組方案:募集配套資金超8億元,明日復(fù)牌
- []【播資訊】“小步快跑”供地風(fēng)向標(biāo)顯現(xiàn) 武漢率先開(kāi)啟第六批集中供地
- []世界熱點(diǎn)評(píng)!45個(gè)重點(diǎn)城市城鎮(zhèn)化率:這六個(gè)城市超90%
- []世界熱文:星輝娛樂(lè):(1)近兩年,受多種因素影響,公司收入和凈利潤(rùn)有所下滑
- []全球速訊:被六省(市)納入新冠肺炎診療方案的化痰止咳中藥是怎樣煉成的?
- []博雅生物:公司一直在積極推進(jìn)漿站拓展工作,申請(qǐng)新設(shè)漿站存在不確定性,如公司獲批新設(shè),將及時(shí)披露
- []原油交易提醒:美國(guó)料陷入技術(shù)性衰退,需求減弱拖累油價(jià)五連陰
- []當(dāng)前資訊!融創(chuàng)發(fā)布境外債務(wù)初步重組框架:擬將30至40億美元借款轉(zhuǎn)為普通股等
- []世界快看點(diǎn)丨內(nèi)蒙一機(jī):公司民品業(yè)務(wù)涉及鐵路車(chē)輛及相關(guān)零部件,訂單任務(wù)充足,重要合同簽訂情況均在臨時(shí)公告中有披露
- []世界頭條:二手房買(mǎi)家因賣(mài)家換掉家具拒付尾款遭起訴,法院:出賣(mài)人構(gòu)成違約
- []2022財(cái)年虧損18.16億,靠港府“續(xù)命”的香港海洋公園能走多遠(yuǎn)?
- []每日快看:大葉股份:公司綜合考慮質(zhì)量、性能、交期、價(jià)格等多個(gè)因素,汽油割草機(jī)零部件為全球化采購(gòu)
- []晉億實(shí)業(yè):公司主要從事各類(lèi)緊固件的研究和開(kāi)發(fā),生產(chǎn)銷(xiāo)售各類(lèi)緊固件、鐵道扣件等產(chǎn)品,產(chǎn)品遠(yuǎn)銷(xiāo)國(guó)內(nèi)外
- []融創(chuàng)公布境外債重組重大進(jìn)展 加速回到健康發(fā)展軌道
- []新力被債權(quán)人放棄了
- []房企融資“三箭齊發(fā)”,置業(yè)信心能否回暖?
- []【環(huán)球速看料】國(guó)際油價(jià) 7日 顯著下跌
- []獨(dú)立儲(chǔ)能電站商業(yè)投資價(jià)值的識(shí)別與分析
- []甘肅多措并舉保障冬季電力供應(yīng)
- []天天快報(bào)!電化學(xué)儲(chǔ)能是什么意思?電化學(xué)儲(chǔ)能主要包括哪些?
- []焦點(diǎn)!成立1年,業(yè)務(wù)覆蓋30+國(guó)家和地區(qū)!這家儲(chǔ)能公司怎么這么猛?
- []今日看點(diǎn):車(chē)險(xiǎn)年底買(mǎi)是否優(yōu)惠些 年底買(mǎi)車(chē)保險(xiǎn)會(huì)不會(huì)優(yōu)惠些
- []【全球熱聞】美股異動(dòng) | 中概教育股普漲 新東方(EDU.US)漲超9%
- []【天天新要聞】定向增發(fā)+公司債 大名城拋出約50億元再融資方案
- []保險(xiǎn)報(bào)案有效期是多久 一般保險(xiǎn)報(bào)案的有效期限是多長(zhǎng)時(shí)間
- []保險(xiǎn)不續(xù)費(fèi)自動(dòng)退保嗎 保險(xiǎn)要是不續(xù)費(fèi)會(huì)自行退保嗎
- []參保人就是被保險(xiǎn)人嗎 被保險(xiǎn)人是不是參保人
- []公積金一定要留余額嗎 公積金必須留余額嗎
- []歲寶百貨深圳宏發(fā)大世界購(gòu)物廣場(chǎng)門(mén)店提前終止租賃協(xié)議
- []天天滾動(dòng):2023年Q1全球計(jì)劃運(yùn)力預(yù)計(jì)達(dá)12億,法國(guó)境內(nèi)短途航班取消將為對(duì)手創(chuàng)造機(jī)會(huì)
- []頭條:川潤(rùn)股份:12月7日公司高管李輝減持公司股份合計(jì)5.37萬(wàn)股
- []零售云平臺(tái)多點(diǎn)數(shù)智赴港IPO 騰訊IDG是股東
- []【環(huán)球熱聞】新湖中寶擬引入衢州國(guó)資 由控股股東出讓不超過(guò)10%股權(quán)
- []科藍(lán)軟件:12月7日公司高管王安京減持公司股份合計(jì)14.84萬(wàn)股
- []全球快訊:龍佰集團(tuán):12月7日公司高管張海濤增持公司股份合計(jì)1600股
- []世界球精選!歷時(shí)八個(gè)月 南京正式實(shí)施商品房預(yù)售資金監(jiān)管新政
- []當(dāng)前信息:北京銀行與重點(diǎn)房地產(chǎn)企業(yè)簽約,提供意向性融資總額2500億元
- []環(huán)球焦點(diǎn)!格力地產(chǎn)重啟收購(gòu)珠海免稅 構(gòu)建三大業(yè)務(wù)板塊
- []美國(guó)房地產(chǎn)大起大落后迎來(lái)投資機(jī)會(huì)
- []每日視點(diǎn)!新柴股份:12月7日公司高管周高峰減持公司股份合計(jì)2000股
- []北京銀行:為萬(wàn)科、中海、招商等重點(diǎn)房企提供意向性融資總額2500億元
- []快資訊丨佳力奇:加大自主創(chuàng)新力度 持續(xù)鞏固技術(shù)堡壘
- []當(dāng)前播報(bào):群興玩具:截止目前,公司未存在籌劃重大資產(chǎn)重組等事項(xiàng)
- []現(xiàn)貨黃金持穩(wěn),市場(chǎng)權(quán)衡兩大前景,警惕通脹“掛自動(dòng)擋”
- []環(huán)球今日?qǐng)?bào)丨中指院: A股ESG報(bào)告披露率較低
- []人福醫(yī)藥:12月7日徐華斌減持公司股份合計(jì)13萬(wàn)股
- []每日快訊!越秀地產(chǎn)前11月合同銷(xiāo)售1029.4億元 完成年度銷(xiāo)售目標(biāo)83%
- []交建股份:11月28日至12月1日公司高管胡先寬、儲(chǔ)根法、曹振明、陳明洋、施秀瑩減持公司股份合計(jì)72.02萬(wàn)股
- []物業(yè)流拍、招租進(jìn)行中,天橋百貨覓新生
- []當(dāng)前關(guān)注:合生創(chuàng)展前11月總合約銷(xiāo)售額281.13億元 同比下降27.73%
- []全球觀熱點(diǎn):中指院:二十城物業(yè)服務(wù)收費(fèi)穩(wěn)中略升
- []新化股份:12月6日至12月7日公司高管方軍偉減持公司股份合計(jì)8000股
- []寶龍地產(chǎn)前11月合約銷(xiāo)售總額約379.3億元
- []【天天新要聞】萬(wàn)通發(fā)展擬投資5億元設(shè)立通信業(yè)務(wù)全資子公司
- []全球速讀:沃森生物:公司近年來(lái)持續(xù)從銷(xiāo)售體系建設(shè)、消費(fèi)者教育、終端服務(wù)和渠道布局多維度打造產(chǎn)品品牌和市場(chǎng)影響力
- []大名城擬定增不超過(guò)30億元 主要投向上海5個(gè)項(xiàng)目
- []天天熱文:黃山膠囊:我公司根據(jù)相關(guān)法律、法規(guī)及規(guī)范性文件的規(guī)定標(biāo)準(zhǔn)進(jìn)行信息披露
- []黃山膠囊:我公司與熊去氧膽酸膠囊暫無(wú)合作
- []【新要聞】中南建設(shè)三只債券獲持有人會(huì)議通過(guò) 豁免美元債交叉違約
- []每日快報(bào)!大名城擬發(fā)行本金不超過(guò)20億元的公司債券
- []全球即時(shí)看!落子布局電池租賃!寧德時(shí)代或許將用換電服務(wù)深度綁定車(chē)企
- []越秀地產(chǎn):前11月合同銷(xiāo)售額約為人民幣1029.4億元
- []環(huán)球快看:中華企業(yè)擬非公開(kāi)發(fā)行股票不超過(guò)總股本30% 用于“保交樓“項(xiàng)目
- []德藝文創(chuàng):截至2022年11月30日(目前最新數(shù)據(jù))的股東人數(shù)為12,383
- []全球熱門(mén):中駿集團(tuán)提前匯出12.87億以?xún)陡顿?gòu)房尾款A(yù)BS本息 年內(nèi)公開(kāi)債務(wù)“零違約”
- []環(huán)球報(bào)道:杭州規(guī)定保租房租金應(yīng)低于同類(lèi)房源市場(chǎng)價(jià)格 2023年1月5日起施行
- []全球動(dòng)態(tài):奧馬電器:公司產(chǎn)品為冰箱冷柜,冰箱冷柜為居民生活必備的耐用消費(fèi)品
- []全球速看:合肥搭建線上服務(wù)平臺(tái) 開(kāi)啟“二手房互換”新模式
- []每日資訊:金石亞藥:目前公司產(chǎn)能及備貨充足,能夠滿(mǎn)足市場(chǎng)需求
- []實(shí)至名歸,箭牌家居榮獲行業(yè)唯一“2022國(guó)際CMF設(shè)計(jì)獎(jiǎng)”金獎(jiǎng)!
- []快資訊:雖遲但到 | 2022 環(huán)球旅訊峰會(huì),12月底上海見(jiàn)
- []天天速遞!圖解貴金屬及外匯:多空成本+最單邊押注(2022/12/08周四)
- []熱資訊!中駿安全度過(guò)行業(yè)低谷期,年內(nèi)償還境內(nèi)外公開(kāi)債務(wù)超70億元
- []世界熱門(mén):豪森股份:公司2022年度向特定對(duì)象發(fā)行A股股票的定價(jià)基準(zhǔn)日為發(fā)行期首日
- []財(cái)面兒丨中駿集團(tuán)控股1-11月實(shí)現(xiàn)累計(jì)合同銷(xiāo)售金額約544.42億元
- []天天新動(dòng)態(tài):西安飲食:該公司并未實(shí)際開(kāi)展業(yè)務(wù)
- []青島中程:公司印尼工業(yè)園現(xiàn)場(chǎng)員工,克服多方困難,全力推進(jìn)RKEF鎳電項(xiàng)目剩余工程的建設(shè),爭(zhēng)取早日交付
- []天天日?qǐng)?bào)丨財(cái)面兒|德信中國(guó)前11月累計(jì)合約銷(xiāo)售金額336億元
- []全球看熱訊:物業(yè)丨卓越商企服務(wù):全資附屬公司收到仲裁通知書(shū)
- []【新要聞】比特幣概念股票有哪些?2021年比特幣概念股一覽?
- []快消息!核電股票有哪些?2018核電概念股龍頭有哪些?
- []當(dāng)前快訊:股市熔斷機(jī)制是什么意思?股市熔斷機(jī)制有什么意義?
- []今日要聞!物業(yè)丨華潤(rùn)萬(wàn)象生活:與華潤(rùn)置地訂立商業(yè)運(yùn)營(yíng)服務(wù)框架協(xié)議之補(bǔ)充協(xié)議
- []全球熱議:鉬板概念股是哪些?鉬板股票一覽?
- []資訊推薦:合力泰:公司目前未涉及該業(yè)務(wù)
- 遺傳算法實(shí)例有哪些?函數(shù)的最大值怎么解?
- 數(shù)學(xué)筆記有哪些?數(shù)學(xué)無(wú)窮級(jí)數(shù)和收斂判定
- 環(huán)球速看:怎么使用java修改端口?springboot打包項(xiàng)目
- 資訊:mysql報(bào)錯(cuò)的解決方法 內(nèi)部異常堆棧跟蹤的結(jié)尾
- 域名訪問(wèn)升級(jí)怎么操作?追蹤域名指向的IP地址
- 全球看熱訊:12月9日天瑞儀器漲停分析:抗原自測(cè),新冠檢測(cè),體外診斷概念熱股
- 二十年老品牌利德治療儀讓你在家安心做理療
- 頭條焦點(diǎn):FBI的WARNING是什么?簡(jiǎn)單的靜態(tài)代碼檢測(cè)規(guī)則
- 心理測(cè)試小游戲有哪些?真的準(zhǔn)嗎?
- 快看點(diǎn)丨12月9日沈陽(yáng)化工漲停分析:PVC,燒堿,石油化工概念熱股
- B站注冊(cè)資本增幅400%至5億 目前由陳睿全資持股
- 光源資本出任獨(dú)家財(cái)務(wù)顧問(wèn) 沐曦集成電路10億元A輪融資宣告完成
- 巨輪智能2021年上半年?duì)I收11.24億元 期內(nèi)研發(fā)費(fèi)用投入增長(zhǎng)19.05%
- 紅棗期貨尾盤(pán)拉升大漲近6% 目前紅棗市場(chǎng)總庫(kù)存約30萬(wàn)噸
- 嘉銀金科發(fā)布2021年Q2財(cái)報(bào) 期內(nèi)凈利潤(rùn)達(dá)1.27億元同比增長(zhǎng)208%
- 成都銀行2021上半年凈利33.89億元 期內(nèi)實(shí)現(xiàn)營(yíng)收同比增長(zhǎng)17.27億元
- 汽車(chē)之家發(fā)布2021年第二季度業(yè)績(jī) 期內(nèi)新能源汽車(chē)品牌收入增長(zhǎng)238%
- 中信銀行上半年實(shí)現(xiàn)凈利潤(rùn)290.31億元 期末不良貸款余額706.82億元
- 光伏概念掀起漲停潮交易價(jià)格創(chuàng)新高 全天成交額達(dá)1.29億元
- 上半年生物藥大增45% 關(guān)鍵財(cái)務(wù)指標(biāo)好轉(zhuǎn)營(yíng)收賬款持續(xù)下降
- 全球熱推薦:甲醇概念上市公司有哪些?甲醇概念股一覽?
- 全球短訊!2020年股市休市放假怎么安排的?A股全年休市一覽?
- 2020新能源電池概念股票有哪些?2020新能源電池概念股票一覽?
- 全球?qū)崟r(shí):哪些是智能家居概念股?智能家居概念股名單一覽?
- 全球消息!抄底是什么意思?抄底的四大形態(tài)是怎樣的?
- 【熱聞】磷化工股票有哪些?相關(guān)磷化工概念股票有哪些?
- 【世界新要聞】面板概念龍頭股有哪些?2021年面板概念股有哪些?
- 碳中和是什么概念?碳中和概念股有哪些?
- 每日消息!太陽(yáng)能電池背板上市公司有哪些?太陽(yáng)能電池背板概念股一覽
- 全球滾動(dòng):虛擬現(xiàn)實(shí)板塊股票有哪些?虛擬現(xiàn)實(shí)概念股票一覽?
- 全球動(dòng)態(tài):橡膠股票龍頭股有哪些?橡膠股票有哪些?
- 世界快看:俄油上限剛出臺(tái)沖擊就已顯現(xiàn)?俄羅斯原油出口出現(xiàn)急劇減少
- 電纜上市公司有哪些?相關(guān)上市公司龍頭有哪些?
- 世界快看:核電板塊龍頭股票有哪些?核電概念股票有哪些?
- 世界微資訊!食用油板塊龍頭股票有哪些?食用油板塊龍頭股票有哪些?
- 環(huán)球視訊!2021年騰訊概念股票有哪些?騰訊概念股一覽?
- 森馬服飾股票屬于什么板塊?森馬服飾股票屬于哪些概念股?
- MINE's TALK對(duì)話祝羽捷,「一個(gè)自己的房間」 傳遞自洽生活哲學(xué)
- 世界今頭條!國(guó)際油價(jià)多頭須盡快離場(chǎng),該指標(biāo)暗示需求擔(dān)憂(yōu)仍唱主角
- 中交路橋建設(shè)20億元綠色公司債券已提交注冊(cè)
- 世界熱推薦:中建信息10億元應(yīng)收賬款資產(chǎn)支持ABS已獲受理
- 產(chǎn)業(yè)物流線上季快訊 | 王少華:險(xiǎn)資在物流上的投資機(jī)會(huì)將增多
- 綠城房地產(chǎn)擬發(fā)行90億元中票 項(xiàng)目狀態(tài)為“預(yù)評(píng)中”
- 上海地鐵全線受理云閃付乘車(chē)碼“一碼通行”功能
- 焦點(diǎn)快播:粵萬(wàn)年青:公司產(chǎn)品消炎利膽片功能主治為“清熱,祛濕,利膽
- 精彩看點(diǎn):味知香:公司新產(chǎn)能預(yù)計(jì)前期先進(jìn)行部分投產(chǎn),后期根據(jù)生產(chǎn)運(yùn)營(yíng)情況,逐步釋放產(chǎn)能
- 香港發(fā)展局:一般項(xiàng)目由“生地”變成可建屋“熟地”的時(shí)間減至4年
- 環(huán)球百事通!錫裝股份:公司沒(méi)有上述高送轉(zhuǎn)的計(jì)劃。感謝您的關(guān)心支持!
- 焦點(diǎn)短訊!金價(jià)有望繼續(xù)走強(qiáng)!世界黃金協(xié)會(huì)稱(chēng)全球央行繼續(xù)購(gòu)金,三季度購(gòu)買(mǎi)量猛增至400噸
- 加碼歐洲儲(chǔ)能市場(chǎng) 優(yōu)能新能源發(fā)布新一代儲(chǔ)能逆變器
- 世界熱點(diǎn)!美原油交易策略:經(jīng)濟(jì)衰退擔(dān)憂(yōu)籠罩市場(chǎng),油價(jià)跌勢(shì)難改
- 頭條焦點(diǎn):國(guó)際金價(jià)持穩(wěn),市場(chǎng)擔(dān)心美聯(lián)儲(chǔ)繼續(xù)維持強(qiáng)硬鷹派立場(chǎng)
- 當(dāng)前速看:現(xiàn)貨黃金交易策略:初請(qǐng)數(shù)據(jù)來(lái)襲,關(guān)注200日均線阻力
- 攜程發(fā)布“2023旅游振興A計(jì)劃”,三“重”戰(zhàn)略促萬(wàn)億消費(fèi)
- 天天即時(shí)看!冬季冰雪游升溫,同程旅行冰雪搜索熱度增長(zhǎng)150%
- 全球要聞:國(guó)際金價(jià)或回踩1772美元
- 環(huán)球即時(shí):ThinkBook16p對(duì)比聯(lián)想小新 Pro16 2021款哪個(gè)值得更好?詳細(xì)評(píng)測(cè)
- 焦點(diǎn)熱文:北京樓市,變了
- 場(chǎng)景化營(yíng)銷(xiāo)精準(zhǔn)發(fā)力 錢(qián)小樂(lè)持續(xù)優(yōu)化金融服務(wù)質(zhì)效
- 環(huán)球熱頭條丨Excel函數(shù)之VLOOKUP()怎么使用?一文搞懂Excel函數(shù)之VLOOKUP()使用
- “新十條”發(fā)布后,這個(gè)省份開(kāi)始搶游客了
- 全球最新:魏小安:旅游業(yè)大局三個(gè)月可定,六個(gè)月可起
- 環(huán)球百事通!FFT是什么意思?FFT的詳解
- 天天微頭條丨disable怎么運(yùn)用?disable簡(jiǎn)單易理解用法
- 環(huán)球快報(bào):格式化時(shí)間是什么?抽象類(lèi)DateFormat是什么?
- 焦點(diǎn)!中駿集團(tuán):前11月合同銷(xiāo)售額約544.42億元
- 全球即時(shí):order by是什么意思?order by的詳解
- 天天熱消息:java.lang.NullPointerException解決方案是什么?
- 焦點(diǎn)消息!誅仙3新手卡怎么領(lǐng)取?誅仙3新手卡領(lǐng)取中心
- 弘陽(yáng)地產(chǎn)前11月合約銷(xiāo)售額同比減少56.98% 單月同比跌64.3%
- 天天要聞:主板測(cè)試卡代碼a2是什么?主板測(cè)試卡代碼 常見(jiàn)代碼總結(jié)
- UML建模怎么用?UML建模之用例圖
- 環(huán)球百事通!國(guó)產(chǎn)搞笑電視劇排行榜你看過(guò)幾個(gè)?愛(ài)情公寓只能排倒數(shù)第三
- 【世界快播報(bào)】工廠模式是什么?工廠模式的詳解
- 世界通訊!黃淮學(xué)院最低錄取分?jǐn)?shù)線是多少?2022文理科最低分及位次
- 最美夕陽(yáng)紅 攜手度余生——富德生命人壽十堰中支用鏡頭為老人定格相濡以沫的愛(ài)情
- 速訊:使用Icon圖標(biāo)的幾種方式是啥?Icon圖標(biāo)怎么使用?
- 速看:歌名最長(zhǎng)的網(wǎng)絡(luò)歌曲是什么?歌名最長(zhǎng)的中文歌
- fm2015是什么?fm2010戰(zhàn)術(shù)
- 【獨(dú)家】.NET Core是什么?NET Core有哪些用處?
- Trans系列是啥?基于翻譯模型(Trans系列)的知識(shí)表示學(xué)習(xí)
- 尼康d800與d810哪個(gè)好?尼康d800與d810有哪些區(qū)別?
- 快看點(diǎn)丨Internal問(wèn)題解決流程 Internal server error 500 問(wèn)題解決思路
- 【環(huán)球播資訊】12月8日天元股份漲停分析:可降解塑料,包裝印刷概念熱股
- 每日快播:12月8日焦點(diǎn)科技漲停分析:跨境電商,職業(yè)教育,教育概念熱股
- 12月8日千紅制藥漲停分析:肝素,化學(xué)原料藥,抗原自測(cè)概念熱股
- 微速訊:轉(zhuǎn)動(dòng)慣量是什么意思?轉(zhuǎn)動(dòng)慣量的含義
- 當(dāng)前焦點(diǎn)!歉疚的意思是什么?歉疚一詞詳情介紹
- 西米是什么米?西米露和西米是一樣的嗎?
- 興民智通:公司目前不觸及 st 相關(guān)條款
- 世界頂級(jí)昂貴音響有哪些?世界頂級(jí)昂貴音響介紹
- 世界今日?qǐng)?bào)丨如何正確使用系統(tǒng)清理bat程序?清理bat程序的方法技巧
- 天天微動(dòng)態(tài)丨11月百城二手住宅市場(chǎng)均價(jià)穩(wěn)中趨降
- 【世界熱聞】12月8日國(guó)光連鎖漲停分析:新零售概念熱股
- 頭條焦點(diǎn):文章目錄是什么?選擇排序怎么設(shè)置?
- 世界微資訊!網(wǎng)絡(luò)的利與弊是什么?網(wǎng)絡(luò)的利弊分析
- 天天快資訊丨吸血鬼狂刀技能搭配詳情 吸血鬼狂刀攻略)
- 世界動(dòng)態(tài):磁條讀寫(xiě)器多少錢(qián)?磁條讀寫(xiě)器使用方法介紹
- Modbus通信協(xié)議是什么?Modbus通信協(xié)議詳解
- JSONObject是什么意思?JSONObject的詳情介紹
- 世界關(guān)注:iPad Air(iPad5)什么時(shí)候上市?iPad Air(iPad5)的上市時(shí)間
- 安徽大專(zhuān)學(xué)校推薦!安徽大專(zhuān)院校排名前十詳細(xì)介紹含分?jǐn)?shù)線
- 每日熱聞!BOW是什么意思?為什么要用BOW模型描述圖像?
- 環(huán)球快資訊:鉛球世界紀(jì)錄2019 女子男子鉛球世界紀(jì)錄分別是多少?
- 熱門(mén)看點(diǎn):分析賓得645d怎么樣?賓得公司詳情介紹
- 觀察:梯度(gradient)是什么?梯度的概念是建立在哪方面?
- 焦點(diǎn)播報(bào):程子土包子來(lái)的時(shí)候歌廳的dj叫什么名字?海燕KTV
- 世界視訊!信號(hào)的基本概念是什么?信號(hào)的分類(lèi)有哪些?
- 環(huán)球?qū)崟r(shí):電腦電源額定功率要多少才合適?電腦電源的額定功率
- 全球快消息!4399生死狙擊萬(wàn)人號(hào)賬號(hào)2021 4399生死狙擊好號(hào)和密碼免費(fèi)永久2021
- 焦點(diǎn)訊息:OneNote是什么?OneNote的功能有哪些?
- 世界今頭條!多普達(dá)手機(jī)都有哪些型號(hào)?多普達(dá)最新手機(jī)大全詳情
- 揮著翅膀的女孩英文版叫什么?揮著翅膀的女孩英語(yǔ)版歌詞翻譯
- lol怎么在游戲里回復(fù)好友?lol游戲回復(fù)技巧
- 今日精選:碧海青天的意思是什么?碧海青天一詞出自哪里?
- 世界信息:圖片或手寫(xiě)簽名轉(zhuǎn)電子簽名怎么轉(zhuǎn)?手寫(xiě)簽名轉(zhuǎn)電子簽名教程
- 世界要聞:44歲賈靜雯出席活動(dòng)耳朵被燙傷 修杰楷很是心疼
- 當(dāng)前視點(diǎn)!手機(jī)QQ接收電腦端好友發(fā)送的文件存儲(chǔ)在什么地方?手機(jī)文件儲(chǔ)存路徑
- 天天速讀:語(yǔ)義分割:基于openCV和深度學(xué)習(xí)(二)