欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 养生 > c++学习入门基础1

c++学习入门基础1

2025/7/24 3:31:01 来源:https://blog.csdn.net/2401_86499491/article/details/146483641  浏览:    关键词:c++学习入门基础1

从今天开始c++的学习,本篇博客主要是为了自己记录学习心得和历程,外人来看可能很多地方看不懂,请见谅。

以下是c++入门学习的一些基础,由于我的c语言已经学习完毕,c++的这些基础我会整理成博客,这一节主要是关于c++的入门,就是一些跟c语言用法不太一样的地方。

1.关于缺省参数

在c语言中函数不能设置缺省参数,例如f(int x,int y),此处需要我们进行传入参数。

在c++中我们可以设置缺省参数,即f(int x=1,int y=2),此处并不代表我们不需要传入参数,而只是我们也可以不选择传入参数直接写f(),此时就会默认调用1,2这两个数值,如果传入参数了,则会使用传入的参数。

2.关于引用

在c语言中我们使用指针,多次进行指针的传参是比较复杂的,在c++中我们使用引用。

在c++中引用的格式是int x=10,int &x1=x;此时x1就是x的引用,更改x1的值x也跟着更改,函数传参使传入引用值可以避免形参无法造成对于实参的影响。

对于引用的规则如下:

1.创建引用变量必须要进行初始化

int a = 10;
int& b = a;
int& c;

此处会报错的。没有初始化引用。

2.一个变量可以有多个引用,引用也可以有引用。

int a = 10;
int& b = a;
int& c = b;
int a = 10;
int& b = a;
int& c = b;

如代码,不过多阐述。

3.一个引用但凡引用了一个变量,就不可以再做更改了

int a = 10;
int c = 20;int& b = a;
int& b = c;

此处编译器会报错。

4.引用的应用。

1.用来函数传参,刚才已经提及。另一个应用是链表的头插。我们在c语言中的链表头插实现代码如下:

void pushfront(sltnode ** phead,int x)
{sltnode * newnode =(sltnode *)malloc(sizeof(phead));newnode->next=*phead;*phead=newnode;
}

但如果有了引用我们可以将参数部分变为sltnode &*phead,就不需要二级指针,把底下的代码的解引用全部去掉就行。

2.引用做返回值。

这个部分比较复杂,以后会专门讲解。长话短说,对于每个函数return的返回值,都是拷贝在一个临时变量中,然后进行返回的,但如果直接返回拷贝就省了这个操作,如果我们不想让其拷贝到临时变量中进行返回,是可以通过引用来进行返回的,这样就可以减少拷贝,对程序做了一小部分的优化.

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词