使用namespace需要注意的一些東西

2021-07-25 09:05:05 字數 602 閱讀 4399

使用c++標準庫的任何識別符號,一般來說有三種選擇,但是using directive有時候會出現問題。首先using namespace std這種用法並不會導致效能上的變化。而是在程式比較大的時候,會出現意外的名稱衝突。例如使用如下的形式:

using

namespace a

using

namespace b

假如a有乙個a1函式可供呼叫,b有乙個b1函式可供呼叫

但是如果在a中新增乙個函式b1,呼叫b1則會發生問題,這個時候編譯器不確定呼叫的是到底是哪個命名空間的b1。

void a::a1()

void b::b1()

void a::b1()

void b1()//a or b?發生問題

所以using namespace ...這種using directive用法只適用於程式較小的情況下,當你需要乙個維護複雜的程式時,建議使用類似a::a1()這種直接指定識別符號的用法,比較直觀,而且不會出現某些名稱衝突。

個人理解,如有問題,歡迎指正。

使用Calendar需要注意clear

date是前台傳的值,格式為2014 01 01的形式 如下的 是去date日期當月的最大天數日期 int month integer.parseint date.substring 5,7 取天數 int year integer.parseint date.substring 0,4 取年份 d...

使用SqlSession 需要注意的

sqlsessionfactorybuilder 是用於建立sqlseesionfactory的,將sqlsessionfactorybuilder當成乙個工具類來使用 sqlseesionfactory 會話工廠,是乙個單例的,用於建立sqlsession,sqlsessionfactory一旦建...

constraintlayout 需要注意的事項

橫向和豎向至少都需要設定乙個約束條件,但是實際上下左右都是可以設定約束條件的。仔細觀察android studio 預設的建立專案的textview 如果上下左右都設定了約束條件就會產生邊距。劃重點 相同方向的屬性,比如說top to top 這樣的,實際上可以理解為是relativelayout中...