问题标签 [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.
c - 将全局变量作为参数传递给方法
全局变量:
我想将全局变量(REGISTRATION_SIZE)作为方法参数传递给 wait_for_avaliable 方法,例如 wait_for_avaliable(int size)。我怎样才能做到这一点?
我尝试过这种方式,但它不起作用:
c++ - 为什么加减法的执行顺序不同?
我有一个函数,它通过地址获取一个参数并更改参数的值。但是当我调用函数时,在加减的情况下执行顺序是不同的:
上述代码的输出是:
×:12
是:-1
这意味着x
首先在函数中更改,然后添加到自身(我希望x
成为7
),但更改y
不会影响y
之前的减法运算符。
为什么会这样?
c++ - 通过引用与指针传递
我很难知道何时使用指针与引用。我的问题是:在 Java/C# 中,您可以将对象作为参数传递给函数,然后将此参数分配给内部类变量,以便以后可以在方法范围之外使用它。但是,在 C++ 中,我不确定如何实现相同的目标。如果我通过引用传递,我只能在该方法的范围内使用它。如果我将引用分配给相同类型的内部变量,则其中一个变量的更改不会影响另一个变量。我也不能声明未初始化的引用(可能通过构造函数)。我发现的唯一解决方案是每次我需要使用它时传入引用(作为参数)或传入一个指针而不是一次(例如
这是我用于测试的示例方法:
- 最初,get 和 setValue 引用的值设置为零。
- 我调用 Controller2.initialize(Controller &controller, Controller *controllerPtr)
- 我调用 Controller2::process(Controller &controller)
输出显示在下面的代码块之后
控制器2.h:
控制器类:
控制器.h:
主要课程:
输出结果为:
这是正确的还是我在这里遗漏了什么?
c - 在C中。为什么通过指针传入,然后在函数内部修改然后指针不起作用
}
这个函数被这个调用:
其中表是:节点**表
在调用 add_node(table[bucket]) 之后,我检查了 table[bucket] 并且它仍然为空?这是为什么?