Вопросы с тегом «pass-by-reference»

Передача по ссылке - это стратегия маршалинга аргументов, при которой местоположение переменной в памяти передается функции, а не копия значения переменной, хотя функция появляется в исходном коде для получения самой переменной, а не указателя на нее.

6584
Является ли Java «передачей по ссылке» или «передачей по значению»?

Я всегда думал, что Java была по ссылке . Тем не менее, я видел пару постов в блоге (например, этот блог ), которые утверждают, что это не так. Я не думаю, что понимаю разницу, которую они проводят. Какое...

2629
Как передать переменную по ссылке?

Документация Python кажется неясной относительно того, передаются ли параметры по ссылке или по значению, и следующий код выдает неизменное значение «Original» class PassByReference: def __init__(self): self.variable = 'Original' self.change(self.variable) print(self.variable) def change(self,...

1405
Является ли JavaScript языком передачи по ссылке или передачей по значению?

Примитивные типы (число, строка и т. Д.) Передаются по значению, но объекты неизвестны, поскольку они могут быть оба переданы по значению (в случае, если мы считаем, что переменная, содержащая объект, на самом деле является ссылкой на объект ) и передается по ссылке (когда мы считаем, что...

381
Почему я должен использовать ключевое слово «final» для параметра метода в Java?

Я не могу понять, где finalключевое слово действительно удобно, когда оно используется в параметрах метода. Если мы исключим использование анонимных классов, читаемость и декларацию намерений, то это кажется мне почти бесполезным. Обеспечение того, что некоторые данные остаются постоянными, не так...

300
Можно ли изменить значения массива при выполнении foreach в JavaScript?

пример: var arr = ["one","two","three"]; arr.forEach(function(part){ part = "four"; return "four"; }) alert(arr); Массив все еще имеет свои исходные значения, есть ли способ получить доступ для записи элементов массива из итерационной...

291
Зачем использовать ключевое слово ref при передаче объекта?

Если я передаю объект методу, зачем мне использовать ключевое слово ref? Разве это не поведение по умолчанию в любом случае? Например: class Program { static void Main(string[] args) { TestRef t = new TestRef(); t.Something = "Foo"; DoSomething(t); Console.WriteLine(t.Something); } static public...

285
Передать переменные по ссылке в Javascript

Как передать переменные по ссылке в JavaScript? У меня есть 3 переменные, с которыми я хочу выполнить несколько операций, поэтому я хочу поместить их в цикл for и выполнять операции с каждой из них. псевдокод: myArray = new Array(var1, var2, var3); for (var x = 0; x < myArray.length; x++){ //do...

259
Копируются ли массивы в PHP как значения или как ссылки на новые переменные, и когда передаются в функции?

1) Когда массив передается в качестве аргумента методу или функции, передается ли он по ссылке или по значению? 2) При назначении массива переменной, новая переменная является ссылкой на исходный массив, или это новая копия? Как насчет этого: $a = array(1,2,3); $b = $a; Является ли $bссылка...

249
Как передать объекты в функции в C ++?

Я новичок в программировании на C ++, но у меня есть опыт работы с Java. Мне нужно руководство о том, как передавать объекты в функции в C ++. Нужно ли передавать указатели, ссылки или не указатели и не ссылки? Я помню, в Java нет таких проблем, поскольку мы передаем только переменную, которая...

234
Передача объектов по ссылке или значению в C #

В C # я всегда думал, что непримитивные переменные передаются по ссылке, а примитивные значения передаются по значению. Таким образом, при передаче методу любого не примитивного объекта, все, что делается с объектом в методе, будет влиять на передаваемый объект. (C # 101 материал) Тем не менее, я...

225
Есть ли преимущества передачи по указателю перед передачей по ссылке в C ++?

Каковы преимущества передачи по указателю перед передачей по ссылке в C ++? В последнее время я видел ряд примеров, в которых аргументы функции передаются по указателям, а не по ссылке. Есть ли преимущества для этого? Пример: func(SPRITE *x); с вызовом func(&mySprite); против func(SPRITE...

224
Передача свойств по ссылке в C #

На этот вопрос есть ответы на Stack Overflow на русском : Передача свойства с метод с модификатором исх и вне Я пытаюсь сделать следующее: GetString( inputString, ref Client.WorkPhone) private void GetString(string inValue, ref string outValue) { if (!string.IsNullOrEmpty(inValue)) { outValue =...

213
Лучше ли в C ++ передавать по значению или передавать по константе?

Лучше ли в C ++ передавать по значению или передавать по константе? Мне интересно, что лучше практиковать. Я понимаю, что передача по постоянной ссылке должна обеспечить лучшую производительность в программе, потому что вы не делаете копию переменной....

204
Проходя по ссылке в С

Если C не поддерживает передачу переменной по ссылке, почему это работает? #include <stdio.h> void f(int *j) { (*j)++; } int main() { int i = 20; int *p = &i; f(p); printf("i = %d\n", i); return 0; } Вывод: $ gcc -std=c99 test.c $ a.exe i = 21...

176
Какая польза от «ref» для переменных ссылочного типа в C #?

Я понимаю, что если я передаю тип значения ( int, structи т. Д.) В качестве параметра (без refключевого слова), копия этой переменной передается методу, но если я использую refключевое слово, передается ссылка на эту переменную, не новый. Но с ссылочными типами, такими как классы, даже без...

173
Почему 128 == 128 ложно, а 127 == 127 верно при сравнении оболочек Integer в Java?

class D { public static void main(String args[]) { Integer b2=128; Integer b3=128; System.out.println(b2==b3); } } Вывод: false class D { public static void main(String args[]) { Integer b2=127; Integer b3=127; System.out.println(b2==b3); } } Вывод: true Примечание. Числа от -128 до 127...

161
Передача строки по ссылке в Java?

Я привык делать следующее в C: void main() { String zText = ""; fillString(zText); printf(zText); } void fillString(String zText) { zText += "foo"; } И вывод: foo Однако в Java это, похоже, не работает. Я предполагаю, потому что Stringобъект копируется, а не передается по ссылке . Я думал, что...