vb中function和sub的区别
function是函数,sub是子程序,都可以传递参数,但函数有返回值,子程序没有function 可以用自身名字返回一个值,sub 需定义别的变量,用传址方式传回值。
Sub 过程与Function 过程的区别: 1. Sub 过程定义时无需定义返回值类型,而Function 过程一般需要用“As 数据类型” 定义函数返回值类型。
2. Sub 过程中没有对过程名赋值的语句,而Function 过程中一定有对函数名赋值的语句。
3. 调用过程:调用 Sub 过程与 Function 过程不同。
调用 Sub 过程的是一个独立的语句,而调用函数过程只是表达式的一部分。
Sub 过程还有一点与函数不一样,它不会用名字返回一个值。
但是,与 Function过程一样,Sub 过程也可以修改传递给它们的任何变量的值。
4. 调用 Sub 过程有两种方法: 以下两个语句都调用了名为 MyProc 的 Sub 过程。
Call MyProc (FirstArgument, SecondArgument) MyProc FirstArgument, SecondArgument 注意当使用 Call 语法时,参数必须在括号内。
若省略 Call 关键字,则也必须省略参数两边的括号。
sub和 function
M函数除了直接用函数名调用之外,也可以进行参数传递,使得Matlab应用更加方便。
M函数文件以function开头,格式为function 输出变量 = 函数名称(输入变量)语句;例如:%eg_1f.mfunction s=f(m)s=0for n=1:ms=s+1/n/n;end保存为eg_1f.m,然后在指命窗口执行>>eg_1f(100)ans =1.6350
Excel 我谈function和sub的区别
run time error是一个计算机错误以信息栏的状态显示包含特定的错误代码以及相应的解释.一般来说发生前用户会感到电脑明显的缓慢. 当信息栏被关闭后程序一般会自动关闭或者失去响应,有时会导致电脑重启 有多种情况会导致这些问题,包括 tsr程序(终止并驻留程序)之间的冲突 其他正在运行的程序(常见于扩展程序以及软件的其他附加程序例如google工具拦) 软件问题 内存问题 危险程序例如病毒如果你所经历问题的是由tsr程序所引起的那么可以简单的使用任务管理器终止问题进程。
如果问题长期出现那么可能是软件本身的问题。
可以通过升级和打补丁的方法解决。
但是如果完成上述操作问题仍然存在可以重新安装软件。
有时也会由操作系统产生,这时需要重新安装操作系统。
另一种run time error经常是由内存带来的。
在这种情况下,应该优先联系软件作者/开发商。
他们会给你解决途径。
不过如果他们所提供的方法仍然没有效果应该联系电脑生产商,主板厂家或者其他硬件生产商获得技术咨询。
还有一种run time error是由危险程序例如病毒或者其他恶意软件带来的。
这些危险程序能够改变电脑设置。
通过这种能力他们能够制造run time error。
预防病毒产生的run time error应该经常性的升级杀毒软件。
如果你的电脑没有相应的软件应该安装并且扫描你的电脑以预防对你电脑以及个人信息的隐藏风险 解决步骤:1,终止问题进程。
2,安装更新补丁升级到最新版本或者重新安装应用软件。
3,联系软件作者/开发商。
4,扫描病毒。
5,重新安装操作系统。
6,联系硬件厂商。
常见错误以及错误代码 5 Illegal function call Program error, verify the program has all the latest updates. If updated try reinstalling the program. If you continue to have the same errors contact the software developer. 确认程序以升至最新版本,如未解决重新安装,如果仍然存在应联系软件开发商. 6 Overflow Program error, verify the program has all the latest updates. If updated try reinstalling the program. If you continue to have the same errors contact the software developer. 同5 7 Out of memory ,This issue can be caused when the computer does not meet the programs system requirements or to much memory is already being used for the program to run. 可能由系统配置不达标引起,无法提供足够的内存. If your computer meets the requirements try first reinstalling the program to make sure it's not an issues with the program installation..如果系统配置合格那么重新安装软件确保不是软件自身的问题 9 Subscript out of range Program error, verify the program has all the latest updates. If updated try reinstalling the program. If you continue to have the same errors contact the software developer. 同5 10 Duplicate definition Program error, verify the program has all the latest updates. If updated try reinstalling the program. If you continue to have the same errors contact the software developer. 同5 11 Division by zero Problem with a math formula in the program or the programs code. Verify no software updates are available for the program causing this error. 13 Type Mismatch Make sure your system regional settings are setup correctly and that the program you're running is made for your version of Windows. 确保你的系统区域设置正确并且软件是为你的系统所设置的 14 Out of string space Program error, verify the program has all the latest updates. If updated try reinstalling the program. If you continue to have the same errors contact the software developer. 同5 19 No Resume Program error, verify the program has all the latest updates. If updated try reinstalling the program. If you continue to have the same errors contact the software developer. 同5 20 Resume without error Program error, verify the program has all the latest updates. If updated try reinstalling the program. If you continue to have the same errors contact the software developer. 同5 28 Out of stack space This issue can be caused by a program or memory error. First try going through the out of memory troubleshooting , if this does not resolve the issue try reinstalling / updating the program. 同7,必要时升级/重装软件 35 Sub or Function not defined Program error, verify the program has all the latest updates. If updated try reinstalling the program. If you continue to have the same errors contact the software developer. 同5 48 Error in loading DLL This issue is often caused with a bad installation or an issue caused after another program has been installed that replaced the programs DLL. Close all programs and TSRs and try installing the program again. 多由错误的安装或者第三方程序修改/覆盖原dll程序引起.关闭程序以及相关进程然后重新安装软件 52 Bad file name or number Program error, verify the program has all the latest updates. If updated try reinstalling the program. If you continue to have the same errors contact ...
ASP中 sub 与function 的实质区别
ASP中1:定义 Sub:过程,不返回任何值;Function:函数,可以带返回值 ;2:语法 Sub SubName(参数1, 参数2,...) ...End SubFunction FunctionName(参数1, 参数2,...) ... FunctionName = 返回值 End Function3:调用方法: Sub直接用SubName 参数1, 参数2,...Function如果不要返回值用FunctionName 参数1, 参数2,...如果要返回值Result = FunctionName(参数1, 参数2,...)
vb中,sub需要call ,function不需要call吗
sub 和 function 其实都不需要call,用call是为了增加代码的可读性,是可以省略的:sub的调用方法:过程名 参数1, 参数2, ...或Call 过程名(参数1, 参数2, ...)function的调用方法:变量名=函数名(参数1, 参数2, ...)或函数名 参数1, 参数2, ...或Call 函数名(参数1, 参数2, ...)你可以发现,function的后两种方法,跟sub是完全一样的,而只有第一种方法才能获得函数的返回值。
最后补充一点,从上面分析可以看出,sub这种结构体其实是完全多余的(所有程序设计语言中,似乎也只有VB才有sub的),完全可以用Function取代。
究其原因,一方面是为了兼容早期的Basic语言,另一方面也是微软的设计人员在设计理念上有偏差。
Sub,和endSub是什么意思啊?
Sub 这种写法只有在VB中才有的 Sub是指方法,还有一种叫函数Function C#中是没这样分的, 不过VB是有分的, Sub是方法的开始 ,EndSub是方法的结束, VB中有很多类似于End的写法。
模块化编程,SUB和END SUB之间的代码是一个子程序,用于解决特定的任务,是相同功能的代码尽量整合,方便维护(就是今后修改什么的),同时方便程序代码的阅读。
扩展资料:1. Sub 过程Sub 过程是包含在 Sub 语句和 End Sub 语句中的一系列 Visual Basic 语句。
每次调用过程时都执行过程中的语句,从 Sub 语句后的第一个可执行语句开始,到遇到的第一个 End Sub、Exit Sub 或 Return 语句结束。
Sub 过程执行操作但并不返回值。
它能够带参数,如呼叫代码传递给它的常数、变量或表达式。
声明 Sub 过程的语法如下所示:[accessibility] Sub subname[(argumentlist)]' Statements of the Sub procedure go here.2. End Sub可访问性可以是 Public、Protected、Friend、Protected Friend 或 Private。
可以在模块、类和结构中定义 Sub 过程。
默认情况下它们是 Public,这意味着可以从应用程序中的任意位置调用它们。
参考资料:百度百科-SUB
存储过程中的 procedure、function和 package是干什么的,需要详细介...
procedure:过程function:函数package:包一、过程 PL/SQL过程是一个编译到oracle数据库模式的单机程序。
过程可以接受参数。
当编译一个过程时,CREATE PROCEDURE语句的过程标识符成为数 据字典中的对象名。
CREATE OR REPLACE PPROCEDURE procedure_name (optional parameters) IS | AS declarative part BEGIN program body EXCEPTION exception handler END procedure_name; Declarative Part 是声明变量的地方,比如: local_counter NUMBER := 0; 也可以声明复合类型结构,如records和tables 也可以声明异常,但必须在Exception部门进行处理。
Subprogram Body 包含使用PL/SQL控制结构的逻辑算法实现。
PL/SQL控制结构支持loops、if-then-else、case、和声明块结构。
Exception handler 可选,类似于其他语言的try-catch模型,你可以对特定错误类型或一般异常编写处理器. 应当以动词来命名一个过程。
过程常常执行一些操作如更新数据库、写数据到一个文件或者发送一条消息。
一个过程不必要有参数,如果没有参数创建过程是不需要括号。
当调用一个过程时(过程没有参数)括号是可选的。
例如: CREATE OR REPLACE PROCEDURE insert_temp IS BEGIN INSERT INTO TEMP (n) VALUES (0); END insert_temp: sqlplus调用过程: SQL>execute insert_temp; SQL>execute insert_temp(); 都是正确的。
IS 或 AS关键字是一样的,都可以用。
PROCEDURE insert_temp IS | AS END关键字后加过程名也是可选的,但建议加过程名。
一个过程可能跨越几屏的长度,当滚屏时,有助于看到END子句知道没有跳到下一个包过 程中。
完整的过程结构如下: CREATE OR REPLACE PROCEDURE print_temp IS v_average NUMBER; v_sum NUMBER; BEGIN SELECT AVG(n), SUM(n) INTO v_average, v_sum FROM TEMP; dbms_output.put_line('Average:'||v_average); dbms_output.put_line('Sum:'||v_sum); END print_temp; 二、函数 函数提供了获取对象状态和情形信息的手段,函数有返回值。
CREATE OR REPLACE FUNCTION student_status(optional parameters) RETURN VARCHAR2 IS declarative part BEGIN program body RETURN expression; EXCEPTION exception handler code that should include a RETURN END student_student_status; 参数是可选的,但RETURN语句是必须的。
FUNCTION必须有一个return 语句。
下面的例子是返回一个DATE类型的函数: CREATE OR REPLACE FUNCTION tomorrow RETURN DATE IS next_day DATE; BEGIN next_day := SYSDATE + 1; RETURN next_day; END tomorrow; 函数中的return语句可以是一个表达式,上面函数可以直接返回一个表达式而不用本地变量: FUNCTION tomorrow RETURN DATE IS BEGIN RETURN SYSDATE + 1; END tomorrow; 函数于过程结果相似,只是函数返回值,而过程不返回值 三、包说明 1、语法和风格 包说明基本语法: CREATE PACKAGE package_name IS Type definitions for records, index-by tables, varrays, nested tables Constants Exceptions Global variable declarations PROCEDURE procedure_name_1 (parameters & types); PROCEDURE procedure_name_2 (parameter & types); FUNCTION function_name_1 (parameters & types) RETURN type; END package_name; 包说明中过程和函数没有顺序限制。
包主体将包含包说明中每一个子程序的PL/SQL代码。
包说明中的每一个子程序包体中必须有相应的子程序体。
在包说明中的数据对象声明是全局的。
因此,仅声明需要全局定义的对象。
在包体内的过程语句,包括子程序名、参数名、参数模式、参数类型,必须匹配包说明中的过程语句。
同样,函数也是一样。
包主体模板如下: CREATE PACKAGE BODY package_name IS PROCEDURE procedure_name_1 (parameters & types) IS local variables BEGIN body of code END procedure_name_1; PROCEDURE procedure_name_2 (parameter & types) IS local variables BEGIN body_of_code END procedure_name_2; FUNCTION function_name_1 (parameters & types) RETURN type IS local variables BEGIN body of code RETURN statement; END function_name_1; END package_name; 2、示例: CREATE OR REPLACE PACKAGE students_pkg IS PROCEDURE add_student (v_student_name IN students.student_name%TYPE, v_college_major IN students.college_major%TYPE, v_status IN students.status%TYPE, v_state IN students.state%TYPE DEFAULT NULL, v_license_no IN students.license_no%TYPE DEFAULT NULL); FUNCTION NO_OF_STUDENTS (v_major IN major_lookup.major_desc%TYPE DEFAULT NULL, v_status IN students.status%TYPE DEFAULT NULL) RETURN NUMBER; END students_pkg; 四、包主体 下面是上例的包主体实现: CREATE OR REPLACE PACKAGE BODY students_pkg IS PROCEDURE add_...
转载请注明出处51数据库 » sub or function not
愤怒的趣多多