问题标签 [pass-by-pointer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
41274 浏览

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

让我们考虑一个对象foo(可能是a 、 inta double、 custom struct、 aclass等等)。我的理解是,通过foo引用传递函数(或仅传递指向 的指针foo)会导致更高的性能,因为我们避免制作本地副本(如果foo很大,这可能会很昂贵)。

但是,从这里的答案看来,无论指向什么,实际上都可以预期 64 位系统上的指针的大小为 8 个字节。在我的系统上,afloat是 4 个字节。这是否意味着 iffoo是 type float,那么仅通过值传递而不是给出指向它的指针更有效foo(假设没有其他约束会使在函数内使用一个比另一个更有效)?

0 投票
2 回答
77 浏览

objective-c - 传递对象时数据丢失

我有一个对象

我知道当我填充此对象时它是成功的,并且所有属性都已完全正确地初始化。

但是,当我像这样传递这个对象时:

*这是一个不同的类(它不在上面定义的 NSObject 中)。

question.nextQuestion并且question.previousQuestionnil

为什么当我传递这个对象时,后续对象(下一个问题和上一个问题)会变成 nil?似乎该对象正在执行浅拷贝而不是深拷贝,但不确定。

似乎有一些我不知道的基础知识。

0 投票
1 回答
295 浏览

c++ - 指针并将变量值从一个函数传递到另一个函数。如何使用指针传递变量值

我需要让碗函数将 b1 和 b2 传递到 turntotal 中,以便将两者加到一个不同的函数中。这是代码,我做错了什么?

0 投票
0 回答
41 浏览

c - 从函数设置指针地址

我是 C 的新手,也是提问的新手。我已经阅读了有关此的多个主题和问题。如果我错过了类似的问题,我很抱歉。

我有一个在函数中声明的数组。我想保存数组的地址,以便稍后我可以从另一个函数中找到该数组中的值。

从那里开始,我想保存这个数组的地址并重新使用它:

我已经阅读了多个问题,试图通过引用来掌握通行证,但我有点迷失了。

0 投票
2 回答
5106 浏览

go - 请说明golang类型是否按值传递

我正在尝试制作一个非常简单的程序来修改数组,但是如果我将它们转换为类型,则会遇到一些有趣的行为。https://play.golang.org/p/KC7mqmHuLw看来,如果我有一个数组,则按引用传递,但如果我有一个类型,则按值传递。它是否正确?

我有两个变量 b 和 c,它们都是 3 个整数的数组,但 c 是 cT 类型,在其他所有方面它们应该是相同的。我可以将值分配为b[0]=-1c[0]=-1,但如果我将这些数组作为参数传递给函数,它们的行为就会大不相同。

程序的输出是:

b 之前:[1 2 3]

在 c 之前:[1 2 3]

*在 b 之后:[-1 2 0]

*在 c 之后:[-1 2 3]

*什么?c: [-1 2 0]

我最初的假设是“b 之后”和“c 之后”的行应该是相同的。我做错了什么还是我对按值传递给函数的类型正确(即在传递给函数之前创建变量的副本)?

0 投票
2 回答
40 浏览

pass-by-pointer - Why pointer argv is not updating?

Can somebody help me understand why the pointer head is not updated after new() call?

expected: val:0 # call new(), update l0.val to 0 actual: val:253784 # why update l0.val not update by the pointer

https://www.edaplayground.com/x/54Nz

0 投票
1 回答
618 浏览

c++11 - 未分配被释放的 C++ 指针 *** 在 malloc_error_break 中设置断点以进行调试

我不断收到此错误。我知道是什么功能导致它,但不知道如何修复它。从这个帖子在线查找说:

您需要将指针传递给动态分配的对象,或者在您的 chainLink 类中创建自己的 insde。

但是,当我尝试传递一个字符串指针时。错误仍然弹出。这是我的代码。

0 投票
1 回答
88 浏览

c - 指针调用和值调用 C

如何编写这个C程序指针传递和值传递?我创建了这个程序,它从to生成一个10x10数组,主对角线从下到上读取,但我不知道如何创建另外两个通过指针和值传递的程序我必须用相同的输入再编写两个程序并且只能通过这两种方式输出。我是 C 的初学者,我不知道怎么做。-100100

任何帮助将非常感激。

0 投票
4 回答
3580 浏览

c++ - c++ 通过 const 指针传递或引用 const 指针

我正在学习 c++,最近我读了一本书,其中建议您应该尽可能使用对 const 的引用(如果不会更改基本对象)。

我有一个问题,如果可能的话,您是否应该将引用传递给 const 指针而不是 const 指针,因为引用会阻止复制。如果不是,我什么时候应该使用对 const 指针的引用。

例如:

或者

0 投票
3 回答
174 浏览

c++ - 为什么 std::atomic_fetch 将指针作为其输入参数

std::atomic_fetch_xxx (or, and, add, sub, xor)的一组自由函数,将一个std::atomic<T>*命名的 obj作为输入:


问题:为什么将 std::atomic 类型作为指针而不是作为引用传入,例如:

有实际的理性/原因还是只是风格?