加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – const参数

发布时间:2020-12-16 10:29:39 所属栏目:百科 来源:网络整理
导读:在C中,以下是否有意义? main(){ int a=10; fun(a);}void fun(const int a){...} 我可以看到类似于这个编译的程序但是有链接器问题.我只是想确认在const中将非const变量赋值给const变量是否恰当. 解决方法 是的,没关系. a不能在fun()中重新分配,就好像它已经
在C中,以下是否有意义?

main()
{
 int a=10;
 fun(a);
}

void fun(const int a)
{
...
}

我可以看到类似于这个编译的程序但是有链接器问题.我只是想确认在const中将非const变量赋值给const变量是否恰当.

解决方法

是的,没关系.

a不能在fun()中重新分配,就好像它已经被声明一样:

void fun(int param)
{
    const int a(param);

    ...

    a = 5; // this is illegal and won't compile.
}

因为它是通过副本传递的,所以对main()的反正没有影响.即使fun()的a被声明为非const并被修改.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读