int存整數(第2、11、12章)goto跳轉(第4章,少用)value2 Mephistopheles BettyMay Earth_weight PI8Ball Mary-Ann Betty May Earth-weight 2PISmith家有Jack、Jill;Jones家有John、Jean。家庭內部用名字,跨家庭需全名Jack Smith、Jean Jones。命名空間即「姓氏」。
所有標準庫實體在std命名空間:std::cout、std::vector。::為作用域解析運算符。
using namespace std; // 將std引入當前作用域
cout << "Hello"; // 可直接用cout
相當於成為std「榮譽成員」,免去前綴。不加using需寫std::cout。
// 定義
namespace math {
enum sign { positive, negative };
class integer { ... };
integer A, B, C;
integer divide(integer, integer);
}
// 使用方式1:using指令(引入整個空間)
void q1() {
using namespace math;
integer X; // 隱藏math::X
X.Sign(negative);
math::X.Sign(positive); // 顯式限定訪問被隱藏名字
}
// 使用方式2:using聲明(引入單一名字)
void q2() {
using math::integer;
integer Y; // 僅integer可用,A/B/C/divide需math::
}
// 使用方式3:完全限定名
void q3() {
math::integer Z;
math::A.Sign(positive);
}
namespace myproj {)myproj::net、myproj::db)using namespace(污染包含者作用域),優先using聲明或完全限定名inline namespace v1 {} 支持版本演進平滑遷移namespace {} 替代文件級static,實現內部鏈接命名是編程核心抽象。五大可命名元素構建程序靜態結構,命名空間提供大規模項目模塊化隔離機制。善用命名規範與空間劃分,是專業C++工程師的基本功。