第十六周阅读程序(2)

来源:互联网 发布:云南大学网络平台 编辑:程序博客网 时间:2024/05/20 22:00
#include <iostream>using namespace  std;namespace CounterNameSpace{int upperbound;int lowerbound;class counter{    int count;public:    counter(int n)    {        if (n <= upperbound )        {            count = n;        }        else        {            count = upperbound;        }    }    void reset(int n)    {        if (n < upperbound)        {            count = n;        }    }    int run()    {        if (count > lowerbound)        {            return count--;        }        else            return lowerbound;    }};}int main(){    CounterNameSpace::upperbound = 100;    CounterNameSpace::lowerbound = 0;    CounterNameSpace::counter ob1(10);int i;    do    {        i = ob1.run();        cout << i << " ";    }    while (i > CounterNameSpace::lowerbound);    cout << endl;    CounterNameSpace::counter ob2(20);    do    {        i = ob2.run();        cout << i << " ";    }    while (i > CounterNameSpace::lowerbound);    cout << endl;    ob2.reset(100);    do    {        i = ob2.run();        cout << i << " ";    }    while (i > CounterNameSpace::lowerbound);    cout << endl;    return 0;}


运行结果:

因为using CounterNameSpace::upperbound;已经明确了upperbound的命名空间。

省去就会有命名冲突
0 0
原创粉丝点击