当前位置: 首页 > news >正文

“出参”和“入参”的命名由来

有些开发者会用“入参”和“出参”来描述函数、方法或接口的参数和返回值。尽管我们基本都知道“入参”就是方法的参数,“出参”就是返回值。但是对于一些起步就是JAVA的开发者来说,可能并不清楚这两个名词的由来。这篇文章就来分享一下关于“入参”和“出参”的背景知识。

当使用C语言编程时,我们会这样定义函数:

int foo(int arg){return arg+1;
}

函数可以有若干参数和一个返回值。由于C语言不是面向对象语言,它没有封装的特性,当我们要返回两个值的时候,就只能用指针变量作为参数来“存放”要返回的值:

void foo(int arg0, int *arg1, int *arg2){arg1 = arg0+1;arg2 = arg0+2;
}

这里的参数 arg1 和 arg2 虽然是函数参数,但其意义并不是传递原始数据,而是作为处理后数据的存放容器,本质上就是返回值。

由于C语言的这个“历史典故”,有时候在设计API接口或者方法时,有人就会把返回值称作“出参”。而在JAVA中,除了递归方法,很少会使用“出参”的设计,而是把多个返回值封装为类。

http://www.lryc.cn/news/445859.html

相关文章:

  • webrtc gclient sync报错问题解决
  • FLUX模型,或许这几点你还未曾都了解,最详细的Flux模型介绍(附模型安装包)
  • RAG(Retrieval-Augmented Generation)检索增强生成技术基础了解学习与实践
  • 基于SpringBoot实现高性能缓存组件
  • 【深度学习基础模型】递归神经网络 (Recurrent Neural Networks, RNN) 详细理解并附实现代码。
  • python全栈学习记录(十九) hashlib、shutil和tarfile、configparser
  • RL进阶(一):变分推断、生成模型、SAC
  • WPF 绑定 DataGrid 里面 Button点击事件 TextBlock 双击事件
  • 828华为云征文|华为云Flexus云服务器X实例Windows系统部署一键短视频生成AI工具moneyprinter
  • 非标精密五金加工的技术要求
  • 新手小白怎么通过云服务器跑pytorch?
  • Spring 全家桶使用教程
  • Spark SQL性能优化高频面试题及答案
  • 云原生链路观测平台 openobserve + fluent-bit,日志收集
  • Android 车载应用开发指南 - CarService 详解(下)
  • 【Linux网络 —— 网络基础概念】
  • el-form动态标题和输入值,并且最后一个输入框不校验
  • 一,初始 MyBatis-Plus
  • 安卓13删除下拉栏中的关机按钮版本2 android13删除下拉栏关机按钮
  • 快递物流单号识别API接口代码
  • AI时代的程序员:如何保持和提升核心竞争力
  • Oracle 数据库常用命令与操作指南
  • spring boot项目对接人大金仓
  • 《操作系统 - 清华大学》1 -2:操作系统概述 —— 什么是操作系统
  • power bi制作各季度收入累加柱状图——日期表、calculate、datesytd
  • OceanBase 3.X 高可用 (一)
  • CSR、SSR、SSG
  • linux -L16-linux 查看应用占用的资源top
  • QT——多线程操作
  • 理解C语言之深入理解指针(三)