pass-by-reference相关内容

哪个更快?按引用传递与按值传递 C++

我认为通过引用传递应该比通过值传递更快,因为计算机不会复制数据,它只是指向数据的地址. 但是,请考虑以下 C++ 代码: #include #include #include 使用命名空间标准;//不要使用通过引用传递&有了这个功能,它会变得很慢unsigned long long computePascal(const unsigned int row, ..

在 BST Python 中删除节点

这是一种在 Python 中为 BST 实现添加和删除功能的可能方法.它有点类似于我在 C++ 中对 BST 的想法.从删除代码中可以明显看出,我想删除一个节点,但由于 C++ 中存在 Python 中缺少按引用传递而无法执行此操作.除了 del currNode 之外,有什么好的替代方法可以删除节点(这不起作用).我还有一个问题要澄清我关于 Python 中按引用传递的想法,当使用 add 函数 ..
发布时间:2021-12-16 08:38:19 Python

PHP 变量是按值传递还是按引用传递?

PHP 变量是按值传递还是按引用传递? 解决方案 It's by value 根据 PHP 文档. 默认情况下,函数参数是按值传递的(这样,如果函数内参数的值发生更改,则不会在函数外更改).要允许函数修改其参数,它们必须通过引用传递. 要让函数的参数始终通过引用传递,请在函数定义中的参数名称前添加一个与号 (&). ..
发布时间:2021-12-13 20:41:17 PHP

在 JavaScript 中通过引用传递变量

如何在 JavaScript 中通过引用传递变量? 我有三个变量要对其执行多个操作,因此我想将它们放在一个 for 循环中并对每个变量执行操作. 伪代码: myArray = new Array(var1, var2, var3);for (var x = 0; x 最好的方法是什么? 解决方案 JavaScript 中没有可用的“通过引用传递".您可以传递一个对象(也就 ..
发布时间:2021-12-13 20:33:56 前端开发

按值传递与按引用或按指针传递的性能成本?

让我们考虑一个对象 foo(可能是一个 int、一个 double、一个自定义的 struct,一个 class,随便).我的理解是通过引用一个函数来传递 foo(或者只是传递一个指向 foo 的指针)会导致更高的性能,因为我们避免制作本地副本(这可能很昂贵)如果 foo 很大). 然而,从答案 here 看来,64 位系统上的指针实际上可以预期为 8 字节大小,而不管指向的是什么.在我的系 ..

在 C++ 中通过指针传递比通过引用传递有好处吗?

在C++中指针传递比引用传递有什么好处? 最近,我看到了许多选择通过指针传递函数参数而不是通过引用传递的示例.这样做有什么好处吗? 示例: func(SPRITE *x); 调用 func(&mySprite); 对比 func(SPRITE &x); 调用 func(mySprite); 解决方案 指针可以接收NULL参数,引用参数不能.如果您有可能希望传递“无对象 ..
发布时间:2021-12-13 12:45:48 C/C++开发

按引用传递还是按值传递?

在学习一种新的编程语言时,您可能会遇到的一个可能的障碍是该语言是否默认是值传递或引用传递.> 所以这是我问你们所有人的问题,用你们最喜欢的语言,实际上是如何完成的?什么是可能的陷阱? 当然,您最喜欢的语言可以是您玩过的任何语言:流行, 晦涩, 深奥, 新、旧... 解决方案 这是我自己对 Java 编程语言. 首先是一些代码: public void swap(int x, ..

你可以在 R 中传递引用吗?

你能用“R"传递引用吗?例如,在以下代码中: setClass("MyClass",表示(名称=“字符"))instance1 输出是 >实例1类“MyClass"的对象插槽“名称":[1] “世界!">大批[[1]]类“MyClass"的对象插槽“名称":[1]“你好1"[[2]]类“MyClass"的对象插槽“名称":[1]“你好2" 但我希望它是 >实例1类“MyClass"的对 ..
发布时间:2021-12-11 23:47:34 其他开发

在 PHP 5 中如何通过引用传递对象?

在 PHP 5 中,您是否需要使用 & 修饰符来通过引用传递?例如, class People() { }$p = 新人();函数一($a){ $a = null;}函数二(&$a){ $a = null;) 在 PHP4 中,您需要 & 修饰符在更改后保持引用,但我对我读过的有关 PHP5 自动使用传递引用的主题感到困惑,除非明确克隆对象. 在 PHP5 中, & 修饰符是否需要为所有 ..
发布时间:2021-12-11 19:45:28 PHP

在 PHP (>= 5.0) 中,通过引用传递更快吗?

在 PHP 中,函数参数可以通过在函数声明中的参数前面加上一个和号来通过引用传递,如下所示: function foo(&$bar){//...} 现在,我知道这不是为了提高性能,而是为了允许函数更改通常超出其范围的变量. 相反,PHP 似乎使用写时复制来避免复制对象(也可能是数组),直到它们被更改.所以,对于不改变参数的函数,效果应该和你通过引用传递一样. 但是,我想知道 Cop ..
发布时间:2021-12-08 11:36:47 PHP

哪个更有效:返回值与通过引用传递?

我目前正在研究如何编写高效的C++代码,关于函数调用的问题,想到了一个问题.比较这个伪代码函数: not-void 函数名 () {做点什么返回值;}int主(){...arg = 函数名();...} 使用这个其他相同的伪代码函数: void function-name (not-void& arg) {做点什么arg = 值;}int主(){...功能名称(参数);...} 哪个版本更 ..
发布时间:2021-12-07 23:15:09 C/C++开发

我应该在哪里更喜欢按引用传递或按值传递?

在什么情况下我应该更喜欢传递引用?传值? 解决方案 有五种主要情况你应该使用 pass-by-reference 而不是 pass-by-value: 如果您正在调用需要修改其参数的函数,请使用传递引用作为获得此效果的唯一方法(在这种情况下,我将传递引用和传递指针互换使用,尽管通过指针传递,您通常必须明确检查 nullptr.) 如果您调用的函数需要将大对象作为参数,请通过常量引用 ..
发布时间:2021-12-07 23:06:31 C/C++开发

在 Python 中通过引用传递整数

如何在 Python 中通过引用传递整数? 我想修改传递给函数的变量的值.我读过 Python 中的所有内容都是按值传递的,但必须有一个简单的技巧.例如,在 Java 中,您可以传递 Integer、Long 等的引用类型. 如何通过引用将整数传递给函数? 最佳做法是什么? 解决方案 它在 Python 中不太适用.Python 传递对对象的引用.在您的函数中,您有一个对象— ..
发布时间:2021-12-07 22:49:46 Python

为什么在传递对象时使用“ref"关键字?

如果我将对象传递给方法,为什么要使用 ref 关键字?这不是默认行为吗? 例如: class 程序{静态无效主(字符串 [] args){TestRef t = new TestRef();t.Something = "Foo";做某事(t);Console.WriteLine(t.Something);}静态公共无效 DoSomething(TestRef t){t.Something ..
发布时间:2021-12-02 13:32:25 C#/.NET

在 C 中通过引用传递

如果 C 不支持通过引用传递变量,为什么它可以工作? #include void f(int *j) {(*j)++;}int main() {国际我= 20;int *p = &i;f(p);printf("i = %d\n", i);返回0;} 输出: $ gcc -std=c99 test.c$a.exe我 = 21 解决方案 因为您将指针的值传递给方法,然后取消引用它以获取指向的 ..
发布时间:2021-12-01 23:46:52 其他开发

在 C++ 中通过引用/值传递

我想澄清按值和按引用之间的区别. 我画了一张图 所以,对于按值传递, 使用不同的引用创建相同对象的副本,并为局部变量分配新引用,因此指向新副本 如何理解单词:"如果函数修改了那个值,修改也会出现在按值和按引用传递的调用函数范围内" 谢谢! 解决方案 我认为不传达通过引用传递的含义会产生很多混乱.当有些人说通过引用传递时,他们通常指的不是参数本身,而是被引用的对 ..
发布时间:2021-12-01 15:15:36 C/C++开发

在 C++ 中是按值传递还是按常量引用传递更好?

在 C++ 中是按值传递还是按常量引用传递更好? 我想知道哪种做法更好.我意识到通过常量引用传递应该在程序中提供更好的性能,因为您没有制作变量的副本. 解决方案 过去通常推荐的最佳实践1 对所有类型使用传递通过 const ref,除了内置类型(char、int、double 等),用于迭代器和函数对象(lambdas,从 std::*_function 派生的类. 在移动语义 ..
发布时间:2021-12-01 15:13:00 C/C++开发

如何将对象传递给 C++ 中的函数?

我是 C++ 编程的新手,但我有 Java 的经验.我需要有关如何在 C++ 中将对象传递给函数的指导. 我是否需要传递指针、引用或非指针和非引用值?我记得在 Java 中没有这样的问题,因为我们只传递保存对象引用的变量. 如果您还可以解释在何处使用这些选项,那就太好了. 解决方案 C++11 的经验法则: 按值传递,除非 你不需要对象的所有权,一个简单的别名就可以 ..
发布时间:2021-12-01 14:46:53 C/C++开发

C#中按引用或值传递对象

在C#中,我一直认为非原始变量通过引用传递,原始值通过值传递. 因此,当将任何非原始对象传递给方法时,在方法中对对象所做的任何事情都会影响正在传递的对象.(C# 101 的东西) 但是,我注意到当我传递 System.Drawing.Image 对象时,情况似乎并非如此?如果我将 system.drawing.image 对象传递给另一个方法,并将图像加载到该对象上,然后让该方法超出范 ..
发布时间:2021-12-01 09:23:51 C#/.NET