1. 程式人生 > >using四大用法

using四大用法

1.名稱空間

using namespace 名稱空間;//這樣每次使用名稱空間中的變數時就不用指定名稱空間了

注意:標頭檔案中不應有using名稱空間的宣告

2.類型別名宣告(C++11)

using ll = long long;//等價於typedef long long ll
typedef double db, *p;//db是double的同義詞,p是double*的同義詞(注意)

3.改變從基類繼承來的成員函式的訪問性

class base {
public:
    int fun(int x);
    int b;
};

class son : private
base { public: using base::fun; //fun(int x)由private變成public(注意:using不指定引數列表) protected: using base::b; //b由public變成protected };

4.讓派生類對基類中所有的過載函式都可見,而不是隱藏

class base {
public:
    void func()
    {
        cout << "func()1" << endl;
    }
    void func(int x)
    {
        cout 
<< "func()2" << endl; } }; class son : public base { public: using base::func; //若沒有此句,func()和func(int x)將會被隱藏 void func(int x, int y) { cout << "func()3" << endl; } };