怎样将函数的输出参数写入开源的实时数据库库

始终用const限制所有指向只读输入参数的指针和引用
值传递只用于原始类型(int,float...)的输入参数
优先按const的引用取得其他用户定义类型的输入
如果函数需要修改其参数副本,则可以考虑通过值传递代替通过引用传递
37. 对于只做输入的参数:
a) 始终用const限制所有指向只输入参数的指针和引用。
b) 优先通过值来取得原始类型和复制开销比较低的值的对象。
c) 优先按const的引用取得其他用户定义类型的输入。
如果函数需要其参数的副本,则可以考虑通过值传递代替通过引用传递。这在概念上等同于通过const引用传递加上一次复制,能够帮助编译器更好的优化掉临时变量。
http://www.cnblogs.com/hdk1993/p/4976073.html
D不是都说了 修改参数副本吗?形参就是副本 所以值传递 就是修改的副本 而引用才是本身
A 只读数据不能被修改,采用const修饰就限制了对参数的修改
B 反例:值传递可以传递类对象
C 常量的引用可以提高程序的执行效率,无需创建参数的副本,当然优先考虑
D 被调函数修改实参副本,传形参时通过值传递创建副本,不改变主调函数的实参,传递引用时可能伴随着主调函数实参被修改
参考的意思不是d正确嘛
D说的是修改参数副本,是副本,不是参数值,所以D描述是正确的、
选项D说所的修改参数副本就是在函数内修改引用的参数,使用值传递不会改变原来的值,而引用传递会改变参数以前的值
题目并没有提到参数只读。。。为什么C是对的,按理应该根据实际编程需求来呀。。。。
针对于B选项,类似于在函数的调用中int f(int a[ ])
,实参传入指针,也是值传递
这个D选项的说法有点莫名其妙。
值传递只用于原始类型(int,float...)的输入参数
这个为什么是错的,不是很懂C/C++
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题
京ICP备号-4
扫一扫,把题目装进口袋《Matlab学习笔记05》自定义函数输入与输出参数个数问题
matlab中的内置函数需要包括四个部分:
2,函数的输出变量;
3,函数的名称;
4,函数的输入变量.
形如:function output=function(x),且要注意,函数名必须和M文件名相同。
一,内置函数是单输入单输出函数
例子:用内置函数编写一个将角度转化为弧度的程序,并按列表打印出来:
我们先编写内置函数DR,在保存的时候也要用这个名字即,DR.m:
function output=DR(x);
output=x*pi/180;
然后再后面调用它:
degrees=0:15:180;
radians=DR(degrees);
radians_degrees=[radians]'
degrees_radians =
& &15.0000
& &30.0000
& &45.0000
& &60.0000
& &75.0000
& &90.0000
& 105.0000 &
& 120.0000 &
& 135.0000 &
& 150.0000 &
& 165.0000 &
& 180.0000 &
二,内置函数是多输入,单输出函数
编写函数z(w,x,y)=w*exp(x/y):
function output=f(w,x,y);
cal=w.*exp(x./y);
a=f(1,5,6)
得到结果:
& & 2.3010
三、内置函数是单输入,多输出的函数
编写函数实现f1(x)=exp(x),f2(x)=ln(x):
function [f1,f2]=output(x);
f1=exp(x);
f2=log(x);
[f1,f2]=output(2)
& & 7.3891
& & 0.6931
四、内置函数是多输入,多输出的函数
编写函数实现f(x,y)=y*exp(x),f(x,y)=x*exp(y):
function [f1,f2]=output(x,y);
f1=y.*exp(x);
f2=x.*exp(y);
[f1,f2]=output(10,2)
& &4.4053e+04
& &73.8906
五、没有输入或者输出的函数或者是不确定的输入个数
对于没有输入或者输出的函数的定义,我们很快就能联想到C语言中的函数定义void
f(void),Matlab和它一样,如下定义:
function []=f();
对于输入参数不一定的函数我们用:
[]=f(varargin);
函数varargin说明了函数可以接受不用数量的输入参数。
六、函数的输出和输出的个数
Matlab提供命令查询内置函数的输入与输出的情况:
nargin函数用来查询函数的输入参数的个数,用法是nargin('函数名')
nargout函数用来查询函数的独立输出参数的个数(独立的矩阵),用法是nargout('函数名')
如果函数输入的参数是不一定的,如surf和mesh这样的函数,利用nargin这个函数就会返回一个负值
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。如何在函数参数中写入function_百度知道
如何在函数参数中写入function
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
唨唨是我的最爱
唨唨是我的最爱
采纳数:15
获赞数:10
function用来定义函数,一般一个函数放在一个.m文件里。举个简单的例子建立一个myfunction.m,然后在文件中写。function y=myfunction(a,b)其中a,b是输入函数的参数,y是函数返回的值。当需要返回多个值时,可以将y看作一个数组,或者直接将函数的开头写成如function [x,y]=myfunction(x,y)的形式。然后就是定义函数的内容,通俗的说就是怎样由输入参数a,b得到返回值y。比如最简单的y=a+b。总结一下,将下面的代码function y=myfunction(a,b)y=a+b;保存为一个m文件myfunction.m,调用方式如下。num=myfunction(3,4);这样就可以由函数中的y=a+b得到num的值是3+4=7。
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。请问函数中的输入输出参数如何允许大小写 - SAP R/3 - ITPUB论坛-中国专业的IT技术社区
后使用快捷导航没有帐号?
查看: 2909|回复: 10
请问函数中的输入输出参数如何允许大小写
求职 : 论坛徽章:4
请问在SE37中的输入输出(import和export)参数,如何设置成允许小写?谢谢
_082605.jpg (0 Bytes, 下载次数: 1)
08:26 上传
求职 : 论坛徽章:5
重新建一个data element, domain 里面有个lower case 选上。就可以了
求职 : 论坛徽章:4
zhou5632290 发表于
重新建一个data element, domain 里面有个lower case 选上。就可以了
你好,谢谢你.可是我参照的那个VBKD-BSTKD,它的data element 里面已经勾选了LOWER CASE了.
我用REPORT测试的时候是可以正常输入输出小写的,但是在SE37里测试的时候是直接转换成大写,目前我是要用其他外部系统调用RFC函数,出现的情况和直接在SE37中运行是一样的,全部转换成大写,请问这种情况是否哪里有相关设置? 谢谢
论坛徽章:55
应该有转换大小写的函数
求职 : 论坛徽章:5
zjb0607 发表于
你好,谢谢你.可是我参照的那个VBKD-BSTKD,它的data element 里面已经勾选了LOWER CASE了.
我用REPOR ...
se37上有个Uppercase/Lowercase Check Box, 选上的话测试的时候就可以输入大小写了. 其他系统调用调用这个RFC为什么转换成大写我就不知道了,你找到解决方案分享下吧。
求职 : 论坛徽章:5
zjb0607 发表于
你好,谢谢你.可是我参照的那个VBKD-BSTKD,它的data element 里面已经勾选了LOWER CASE了.
我用REPOR ...
楼主的问题不应该啊,比如这个SUSR_LOGIN_CHECK_RFC&&这个参数里有一个PASSWORD参数就是区分大小写的,其他系统调用这个应该不会转换成大写啊。
认证徽章论坛徽章:63
论坛徽章:8
这个转换是SE37测试界面dialogue转换的 在实际执行过程中是不会转换的
求职 : 认证徽章论坛徽章:254
有大小写转化的函数,楼主可以尝试下
认证徽章论坛徽章:63
有没有解决
itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有    
 北京市公安局海淀分局网监中心备案编号:10 广播电视节目制作经营许可证:编号(京)字第1149号Technorati 标签: ,,,
我们知道.NET中调用ORACLE 的过程没有调用MS-SQLSERVER中的存储过程那么方便,尤其用到参数输出的时候,但是ORACLE的功能强大不会这个不能处理,这个你懂得,呵呵。
2个解决方案,一个是ORACLE中的函数可以带参数输出的,这个比较吻合SQLSERVER中的存储过程(个人比较意见用 ORACLE中的函数应对SQLSERVER中的存储过
二就是用PROCEDURE 的OUT参数带出结果来解决这个问题。
下面来做个程序测试
qiantian" runat="server"&
Button1" runat="server" OnClick="Button1_Click" Text="测试FUNCTION输出" /&
button2" runat="server" OnClick="button2_Click" Text="测试PROCEDUCE输出" /&
Button3" runat="server" Text="测试FUNCTION三层" OnClick="Button3_Click" /&
Button4" runat="server" Text="测试PROCEDURE三层" OnClick="Button4_Click" /&
后台代码 针对测试FUNCTION输出(直接写在代码里面)
protected void Button1_Click(object sender, EventArgs e)
OracleConnection conn = new OracleConnection("Data Source=Persist Security Info=TUser ID=$$$$$$;Password=$$$$$$$$;Unicode=T");
OracleCommand cmd = new OracleCommand();
cmd.Connection =
cmd.CommandText = "F_ACC_CREATEPERMISSION";
cmd.CommandType = CommandType.StoredP
// add the parameters, including the return parameter to retrieve
cmd.Parameters.Add("CategoryID", OracleType.Number).Value = 555;
cmd.Parameters.Add("Description", OracleType.VarChar, 50).Value = "zzz1";
// the return value
cmd.Parameters.Add("Result", OracleType.Number).Direction = ParameterDirection.ReturnV
// execute the function
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
// output the result
Response.Write("Resultis: " + cmd.Parameters["Result"].Value);
后台代码 针对测试FUNCATION (通过参数 数据库类的 三层模式输出)
void Button3_Click(object sender, EventArgs e)
Accounts.Bus.Permissions myperm = new Accounts.Bus.Permissions();
Accounts.Data.Permission myperm = new Accounts.Data.Permission();
int i = myperm.Create(555, "zzz3");
Response.Write(i.ToString());
PERMISSION 类中代码
/// 创建一个权限
public int Create(int categoryID, string description)
OracleParameter[] parameters =
new OracleParameter("CategoryID", OracleType.Number),
new OracleParameter("Description", OracleType.VarChar,50)
parameters[0].Value = categoryID;
parameters[1].Value =
return DbHelperOra.RunProcedure("F_ACC_CREATEPERMISSION", parameters, out rowsAffected);
DbHelperOra中的代码
/// 执行存储过程,返回影响的行数 对应ORACLE 的FUNCTION 的RETURN用的
/// 存储过程名
/// 存储过程参数
/// 影响的行数
public static int RunProcedure(string storedProcName, IDataParameter[] parameters, out int rowsAffected)
using (OracleConnection connection = new OracleConnection(connectionString))
connection.Open();
OracleCommand command = BuildIntCommand(connection, storedProcName, parameters);
rowsAffected = command.ExecuteNonQuery();
result = int.Parse(command.Parameters["ReturnValue"].Value.ToString());
//Connection.Close();
BuildIntCommand调用的代码段
/// 创建OracleCommand 对象实例(用来返回一个整数值)
/// 存储过程名
/// 存储过程参数
/// OracleCommand 对象实例
private static OracleCommand BuildIntCommand(OracleConnection connection, string storedProcName, IDataParameter[] parameters)
OracleCommand command = BuildQueryCommand(connection, storedProcName, parameters);
//command.Parameters.Add(new OracleParameter("ReturnValue", OracleType.Int32, 4, ParameterDirection.ReturnValue,false, 0, 0, string.Empty, DataRowVersion.Default, null));
command.Parameters.Add("ReturnValue", OracleType.Number).Direction = ParameterDirection.ReturnV
BuildQueryCommand调用的代码段
/// 构建OracleCommand 对象(用来返回一个结果集,而不是一个整数值)
/// 数据库连接
/// 存储过程名
/// 存储过程参数
/// OracleCommand
private static OracleCommand BuildQueryCommand(OracleConnection connection, string storedProcName, IDataParameter[] parameters)
OracleCommand command = new OracleCommand(storedProcName, connection);
command.CommandType = CommandType.StoredP
foreach (OracleParameter parameter in parameters)
command.Parameters.Add(parameter);
.net操作Oracle函数
.net访问Oracle函数,并显示返回值:1 表结构(SysFunction)功能编号
VARCHAR2(30)
存储过程是保存在数据库上的批次执行的一条或者多条SQL语句,存储过程和函数相似,他们都是良好的逻辑封装体
可以接受传入和传出参数,存储过程有很多优点。
1、更易于维护
你可以优化存储过程中的命令而不用...
使用 ADO.NET 和 Oracle 进行高级数据访问[转自MSDN]发布日期: 11/4/2004 | 更新日期: 11/4/2004Bill Hamilton适用范围:Microsoft ADO...
在.NET中调用Oracle9i存储过程经验总结(1)
在.NET中调用Oracle9i存储过程可以用多个数据提供者,比如OralceClient,OleDb。本文将用OralceClient为例。...
首先要写连接字符串
可以在web.config里写上
然后再后台调用
string orclcon = ConfigurationManager.Connecti...
一、概述访问Oracle的两种数据提供者lMicrosoft .NET Framework Data Provider for OracleOracle .NET 数据提供程序随 .NET 框架 1....
Oracle自定义函数及应用举例(不同输入输出参数情况)
Oracle自定义函数及应用举例(不同输入输出参数情况)
C#调用存储过程和函数
C#调用PLSQL函数和存储过程,简单实用的小教程带你体会编码的快感.......
【ASP.NET开发】ADO.NET调用带输出参数的存储过程
public static void QueryList()
SqlConnection con = new SqlConnection(&数据库连接字符串...
没有更多推荐了,}

我要回帖

更多关于 c#写入数据库 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信