结构体传参

来源:互联网 发布:清华经管学院知乎 编辑:程序博客网 时间:2024/04/28 15:32
 函数中参数为结构体数据时,有两种处理方式:
 1.传递结构体指针。
  void sum(struct mystruct *node);
  在sum函数中有可能会改变所传递的结构体的数据,可以添加 const 限定。
   void sum(const struct mystruct *node);
 2.传递结构体副本。
 void sum(struct mystruct node);
  在sum函数中创建所传递的结构体的副本,即将结构体的数据成员完全赋值给node.
 优缺点:
  1.指针传递速度快,效率高,消耗存储空间小,但是无法保护数据不被修改,可以添加const 参数进行限制.
  2.副本传递,效率较低,消耗存储空间大,可以保护数据不被修改,适合于数据成员少而简单的结构体。
原创粉丝点击