代码改变世界

白话C++系列(1)-- 输入、输出、命名空间

2016-04-08 21:53  Keiven_LY  阅读(2502)  评论(0编辑  收藏  举报

C++远征之起航篇

起航篇算是C++入门,主要介绍了IDE环境、命名空间、输入输出流,在此通过一个例子来说明。

/*  *************************************************   */

/* 知识点:bool类型、命名空间、输入输出                 */

/* 题目要求:                                           */

/*     使用一个函数找出数组中的最大值和最小值           */

/*  *************************************************   */

#include<stdlib.h>
#include<iostream>
usingnamespace std;

int getMaxOrMin(int *arr, intcount, boolisMax)
{
    int temp = arr[0];
    for(int i = 1; i <count; i++)
    {
        if(isMax)
        {
            if( temp <arr[i])
            {
                temp = arr[i];
            }
        }
        else
        {
            if(temp >arr[i])
            {
                temp = arr[i];
            }
        }

    }
    return temp;
}

int main()
{
    int arr1[4] = {3,2,5,8};
    bool isMax = false;
    cin >> isMax;   //输入cin和输出cout在iostream头文件中,所以要在程序的开始将这个头文件包含进来,同时还要加上命名空间std
    cout << getMaxOrMin (arr1, 4, isMax) << endl;
    system("pause");//system在stdlib.h头文件中,所以要在程序的开始将这个头文件包含进来
    return 0;
}

运行结果:

求得的最小值:

求得的最大值:

下面我们再来思考一个问题,假如这个getMaxOrMin()函数是由某一家公司开发的,比如说这家公司叫CompA。如果公司CompA想要发布这个函数,并且避免与其他公司发布的同名函数,则就需要在自己的函数名字前面加一个明明空间。加好命名空间后,就会将自己的函数放进命名空间中去。在使用的时候就需要加上命名空间,整个程序如下:

 

#include<stdlib.h>
#include<iostream>
usingnamespace std;

namespace CompA
{
    int getMaxOrMin(int *arr, intcount, boolisMax)
    {
        int temp = arr[0];
        for(int i = 1; i <count; i++)
        {
            if(isMax)
            {
                if( temp <arr[i])
                {
                    temp = arr[i];
                }
            }
            else
            {
                if(temp >arr[i])
                {
                    temp = arr[i];
                }
            }

        }
        return temp;
    }
}


int main()
{
    int arr1[4] = {3,2,5,8};
    bool isMax = false;
    cin >> isMax;   //输入cin和输出cout在iostream头文件中,所以要在程序的开始将这个头文件包含进来,同时还要加上命名空间std
    cout << CompA::getMaxOrMin (arr1, 4, isMax) << endl;
    system("pause");//system在stdlib.h头文件中,所以要在程序的开始将这个头文件包含进来
    return 0;
}

运行结果:

求得的最小值:

求得的最大值:

运行结果说明,我们使用这种方式就能够区分各个公司所相同重名的函数,只是在使用的时候,我们需要在函数前面加上相应的命名空间即可。