C++中数组参数详解

编程入门 行业动态 更新时间:2024-10-11 03:24:35

C++中<a href=https://www.elefans.com/category/jswz/34/1771288.html style=数组参数详解"/>

C++中数组参数详解

在C++中,数组永远不会按值传递。它是传递第一个元素(准确地说是第0个)的指针。
例如,如下声明:
  void putValues(int[10]);
被编译器视为:
  void putValues(int*);
数组的长度与参数声明无关。因此,下列三个声明是等价的:
  void putValues(int*);
  void putValues(int[]);
  void putValues(int[10]);

因为数组被传递为指针,所以这对程序员有两个含义:
1、在被调函数内对参数数组的改变将被应用到数组实参上而不是本地拷贝上。当用作实参的数组必须保持不变时,程序员需要保留数组的拷贝。函数可以通过把参数类型声明为const来表明不希望改变数组元素:
  void putValues(const int[10]);
2、数组长度不是参数类型的一部分。函数不知道传递给它的数组的实际长度,编译器也不知道,当编译器对实参类型进行参数类型检查时,并不检查数组的长度。
例如:

void  putValues( int [ 10 ]);  // 视为int*

int  main()

更多推荐

C++中数组参数详解

本文发布于:2024-03-09 22:09:11,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1726247.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:数组   详解   参数

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!