栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++入门学习(一)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++入门学习(一)

1、命名空间

2、C++流输入与流输出

3、缺省参数

4、函数重载

5、引用


1、命名空间

C++中有很多函数变量以及类名都作用于全局,如果不加以限制很容易会产生冲突,命名空间的目的便是为了解决这个问题,将函数变量等的名称进行本地化,以解决出现命名重复导致的冲突。

命名空间的关键字是namespace,用法如下:

namespace N1        //定义名为N1的命名空间

{

        int a;

        int Add(int a,int b)

       {

        return a+b;

       }        //定义在命名空间里的可以是变量,也可以使函数等

}

如果要使用命名空间,一般是用以下代码将命名空间进行展开

using namespace N1;

//C++给出的最常用的一些函数的命名空间是std

using namespace std;

当然也可以不展开命名空间单独使用其中的函数或变量,也可以展开某些常用的函数:

//拿上面定义的N1举个例子

N1::Add(1,2);        //使用命名空间名+作用域符号::+要使用的变量或函数便可以实现指定命名

                                空间访问

using N1::Add(int a,int b);        //这是单独展开命名空间中内容的用法

注:一般日常练习中命名空间直接展开即可,如果是做项目那么后面两种用法会更为合适


2、C++流输入与流输出

C++在对于输入与输出方面给出了比C语言实现更方便的方式,在使用时必须包含头文件以及std命名空间:

include

using namespace std;

int main()

{

        int a;

        cin >> a;        //用cin + 流输入运算符>> + 变量的方式进行输入

        cout << a << endl;        //用cou + 流输出运算符<< + 变量的方式进行输出

                                             //endl是C++中的换行符的表示

        return 0;

}


3、缺省参数

缺省参数是声明或定义函数时为函数的参数指定的一个默认值,如果在传参是没有给参数则默认使用默认值,如果给定参数则使用给定的参数。

void Add(int a = 0, int b = 0)

{

        return a + b;

}

int main()

{

        Add();        //使用默认参数,结果为0

        Add(1,2);        //使用指定的参数,结果为3

        return 0;

}

缺省参数又分为全缺省参数和半缺省参数:

void Add(int a = 0, int b = 1, int c = 2)        //此为全缺省参数,形参全部都有默认值

{

        return a + b + c;

}

void Add(int a, int b = 1, int c = 2)        //此为半缺省参数,有一部分形参没有默认值

{

        return a + b + c;

}

//注:缺省参数赋值时必须从右往左依次给,不能跳过一个值给

例:Add(1,,3)//错误

       Add(1,2,)//正确

如果做项目文件分离,那么缺省参数应该在声明中给出,在定义时则不必再给:

test.h

void Add(int a = 0, int b = 0);

test.c

void Add(int a,int b)

{

        return a + b;

}


4、函数重载

函数重载是C++允许在同一作用域中出现同名函数重载的情况,它要求同名函数的形参列表(个数或类型或顺序)必须不同:

int Add(int a, int b)

{

        return a + b;

}

double Add(double a, double b)

{

        return a + b;

}

long Add(long a, long b)

{

        return a + b;

}

int main()

{

        Add(1,2);

        Add(1.0,2.0);

        Add(1L,2L);

        return 0;

}

注:函数返回类型并不是函数重载的判断条件


5、引用

引用的用法和指针比较相似,但却还是有许多区别,引用相当于是给函数起的“别名”。

int b = 0;

int& a = b;        //这里便是声明了一个a是b的引用

                        //引用定义时必须初始化,这是和指针不同的其中一个地方

int* a;

int b = 0;

int c = 0;

a = &b;

a = &c;        //指针可以改变地址,而引用不可以改变

引用通常的用法:

void Swap(int& a, int& b)

{

        int t;

        t = a;

        a = b;

        b = t;        //这里直接交换了传进来的实参的值

                        //因为引用相当于直接引用了实参的那段地址,这一点和指针类似

                        //引用可以对实参进行改变

}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1012810.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号