前端时间需要一个嵌入式的webserver,但最终没有一个比较满意的。最近就在想是否自己写一个支持lua脚本的服务器版本,可以嵌入到各种webserver中,且是与webserver集成在一起,而非单独进程方式(类似cgi)。想到那么就开始动手写,由于之前利用的是cgilua,那么就做一个cgilua的子集吧,尽量兼容。需求兼容cgilua,其网页格式仍然以.lp为后缀 lp文件格式通cgilua
转载
2024-05-27 09:52:11
65阅读
一、值参数未用ref或out修饰符声明的参数为值参数。使用值参数,通过将实参的值复制到形参的方式,把数据传递到方法。方法被调用时,系统做如下操作。在栈中为形参分配空间。复制实参到形参。值参数的实参不一定是变量。它可以是任何能计算成相应数据类型的表达式。看一个例子:float func1(float val) //声明方法
{
float j=2.6F;
float k=5.1F;
....
openresty开发系列13--lua基础语法2常用数据类型介绍
一)boolean(布尔)
布尔类型,可选值 true/false;
Lua 中 nil 和 false 为"假",其它所有值均为"真"。比如 0 和空字符串就是"真";
local a = true
local b = 0
local c = nil
if a then
print("a") --&
Q:“引用”和“引用计数”?A:“引用”既为对象的名字。比如a = {},名叫a的变量存储的值是一个”table”,”table”的名字是a;同时还可以说变量a存储着”table”的“引用”。 当“(强)引用”被创建时,对象的“引用计数”加1,只要对象的“引用计数”不为0,对象就不会被销毁,Lua的“垃圾回收系统”只回收那些“引用计数”为0的对象。Q:“强引用”和“弱引用”?A:当对象被创建时会
转载
2024-08-16 09:19:50
41阅读
命名参数,有的翻译为具名参数,顾名思义就是给带入函数的参数起个名字,注意这个名字是固定的。我们知道一般的语言,比如c/c++,java等参数只有在函数定义的时候才有类型和变量名,在函数调用时传入的是变量名或者实际值,这里的变量名可以相同也可以不同。// 假定有函数squire
int squire(int length, int width);
// 我们调用是可以如下调用,带入的变量名可以使a
转载
2024-03-22 06:43:31
37阅读
简单说说Lua中的面向对象Lua中的table就是一种对象,看以下一段简单的代码: local tb1 = {a = 1, b = 2}
local tb2 = {a = 1, b = 2}
local tb3 = tb1
转载
2024-05-24 20:11:38
56阅读
关于python的传值。今天使用中遇到一个问题,
转载
2023-05-29 23:53:34
153阅读
导读:1.变量和对象2.可变对象与不可变对象3.引用传参 在C/C++中,传值和传引用是函数参数传递的两种方式。由于思维定式,从C/C++转过来的Python初学者也经常会感到疑惑:在Python中,函数参数传递是传值,还是传引用呢?看下面两段代码:def foo(arg):
arg = 5
print(arg)
x = 1
foo(x) # 输出5
print(x) # 输出1
de
转载
2023-08-14 23:29:16
139阅读
[python传值&值引用] 和其他语言不一样,传递参数的时候,python不允许程序员选择采用传值还是传引用。Python参数传递采用的肯定是“传对象引用”的方式。实际上,这种方式相当于传值和传引用的一种综合。如果函数收到的是一个可变对象(比如字典或者列表)的引用,就能修改对象的原始值--相当于通过“传引用”来传递对象。如果函数收到的是一个不可变对象(比如数字、字符或者元组)的引用,就
转载
2023-05-27 12:32:37
90阅读
有的人说,Java中给函数传递参数有传值和传引用两种形式;但有的书中说只有一种,那就是传值。下面我简单介绍下我的理解:传值: Java中的八大基本类型所定义的变量传递给方法,都属于传值。传值是把实参的值创建了一个副本,然后传递给对应的方法形参。在方法体中对形参进行任何操作,都不会影响实参的值。传值改变的只是方法体中的形参!!
转载
2023-05-31 17:39:53
199阅读
传值和传引用When you’re passing primitives into a method ,you get a distinct copy of the primitive. When you’re passing a reference into a method , you get a copy of the reference.以上引自《Thinging in Java》,总结一
转载
2023-07-17 12:13:06
118阅读
https://github.com/Tencent/xLua/blob/master/Assets/XLua/Doc/XLua%E6%95%99%E7%A8%8B.md 本章节涉及到的实例均在XLua\Tutorial\LuaCallCSharp下new C#对象你在C#这样new一个对象:var newGameObj = new UnityEngine.GameObject();对应
转载
2023-09-05 22:46:10
70阅读
参数传递的方式
值传递:
将实参的值传递给形参,函数体中对形参进行了修改不会影响实参。
转载
2023-05-30 22:04:14
91阅读
这个问题一般是相对函数而言的,也就是java中的方法参数,那么我们先来回顾一下有关参数传递给方法(或函数)的两个专业术语:按值调用(call by value)按引用调用(call by reference)所谓的按值调用表示方法接收的是调用者提供的值,而按引用调用则表示方法接收的是调用者提供的变量地址(如果是C语言的话来说就是指针啦,当然java并没有指针的概念)。这里我们需要注意的是一个方法可
转载
2023-06-15 19:50:24
71阅读
【部分参考自《Java程序员面试笔试宝典》——个人觉得这本书真的很不错】在Java语言中提供了两种参数传递的方式:值传递和引用传递。【实参和形参】个人理解为,实参就是在调用这个方法时,真实,实际传递给方法进行各种操作的参数。形参,即为形式参数,也就是在编写该方法时,声明方法需要接收到什么类型的什么参数。【值传递】在方法调用时,实参会把它的值传递给形参,形参只是用实参的值进行初始化形成一个临时的存储
转载
2023-07-17 12:11:40
193阅读
面试题:当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递? 答:是值传递。Java 编程语言只有值传递参数。当一个对象实例作为一个参数被传递到方法中时,参数的值就是该对象的引用的一个副本。指向同一个对象,对象的内容可以在被调用的方法中改变,但对象的引用(不是引用的副本)是永远不会改变的。在Java语言中基本类型和St
转载
2023-07-25 12:45:48
96阅读
值传递 VS 引用传递首先,我们必须要搞清楚,到底什么是值传递,什么是引用传递,否则,讨论 Java 到底是值传递还是引用传递就显得毫无意义。值传递: 当一个参数按照值的方式在两个方法之间传递时,调用者和被调用者其实是用的两个不同的变量——被调用者中的变量(原始值)是调用者中变量的一份拷贝,对它们当中的任何一个变量修改都不会影响到另外一个变量。引用传递: 而当一个参数按照引用传递的方式在两个方法之
转载
2023-07-17 12:12:43
103阅读
下面的程序阐述了值传递与应用传递的区别。package com.liaojianya.chapter1;/** * This program demonstrates the use o\
原创
2023-05-08 16:02:21
53阅读
# Java传值传引用
在Java编程语言中,传值和传引用是非常重要的概念。理解这两个概念对于编写高效和可靠的代码至关重要。本文将详细介绍Java中的传值和传引用以及它们在代码中的应用。
## 传值和传引用的概念
在Java中,传值和传引用是用于描述如何将数据传递给方法或函数的机制。传值是指将变量的值复制给方法的参数,而传引用是指将变量的引用(内存地址)复制给方法的参数。
当将基本数据类型
原创
2023-08-07 07:50:10
65阅读
最近发现在大数据量的 lua 环境中,GC 占据了很多的 CPU 。差不多是整个 CPU 时间的 20% 左右。希望着手改进。这样,必须先对 lua 的 gc 算法极其实现有一个详尽的理解。我之前读过 lua 的源代码,由于 lua 源码版本变迁,这个工作还需要再做一次。这次我重新阅读了 lua 5.1.4 的源代码。从今天起,做一个笔记,详细分析一下 lua 的 gc 是如何实现的