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

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

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

17
Проходя по ссылке в С
Если 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

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

7
Почему 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 соответствуют действительности.

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

8
Swift: передать массив по ссылке?
Я хочу передать свой Swift Array account.chatsв качестве chatsViewController.chatsссылки (так что , когда я добавить чат в account.chats, по- chatsViewController.chatsпрежнему указывает на account.chats). Т.е. я не хочу, чтобы Swift разделял два массива при изменении длины account.chats.

17
Значение по умолчанию для параметра при передаче по ссылке в C ++
Можно ли задать значение по умолчанию для параметра функции, когда мы передаем параметр по ссылке. в C ++ Например, когда я пытаюсь объявить такую ​​функцию, как: virtual const ULONG Write(ULONG &State = 0, bool sequence = true); Когда я это делаю, выдает ошибку: ошибка C2440: 'аргумент по умолчанию': невозможно преобразовать …

6
Как сделать эквивалент передачи по ссылке для примитивов в Java
Этот код Java: public class XYZ { public static void main(){ int toyNumber = 5; XYZ temp = new XYZ(); temp.play(toyNumber); System.out.println("Toy number in main " + toyNumber); } void play(int toyNumber){ System.out.println("Toy number in play " + toyNumber); toyNumber++; System.out.println("Toy number in play after increement " + toyNumber); } …

17
C ++ - передача ссылок на std :: shared_ptr или boost :: shared_ptr
Если у меня есть функция, которая должна работать с a shared_ptr, не было бы более эффективным передать ей ссылку на нее (чтобы избежать копирования shared_ptrобъекта)? Каковы возможные побочные эффекты? Я предвижу два возможных случая: 1) внутри функции делается копия аргумента, как в ClassA::take_copy_of_sp(boost::shared_ptr<foo> &sp) { ... m_sp_member=sp; //This will copy …

8
Список передан по ссылке - помогите мне объяснить это поведение
Взгляните на следующую программу: class Test { List<int> myList = new List<int>(); public void TestMethod() { myList.Add(100); myList.Add(50); myList.Add(10); ChangeList(myList); foreach (int i in myList) { Console.WriteLine(i); } } private void ChangeList(List<int> myList) { myList.Sort(); List<int> myList2 = new List<int>(); myList2.Add(3); myList2.Add(4); myList = myList2; } } Я предполагал, myListчто …

8
Быстрая передача по значению или передача по ссылке
Я новичок в Swift и только что прочитал, что классы передаются по ссылке, а массивы / строки и т. Д. Копируются. Проход по ссылке такой же, как в Objective-C или Java, где вы фактически передаете ссылку, или это правильный проход по ссылке?

11
Передача целого числа по ссылке в Python
Как передать целое число по ссылке в Python? Я хочу изменить значение переменной, которую передаю функции. Я читал, что в Python все передается по значению, но должен быть простой трюк. Например, в Java можно передать эталонные типы Integer, Longи т.д. Как передать целое число в функцию по ссылке? Какие лучшие …

6
Фрейм данных python pandas, это передача по значению или по ссылке
Если я передаю фрейм данных функции и изменю его внутри функции, будет ли это передача по значению или по ссылке? Я запускаю следующий код a = pd.DataFrame({'a':[1,2], 'b':[3,4]}) def letgo(df): df = df.drop('b',axis=1) letgo(a) значение aне меняется после вызова функции. Означает ли это, что это передача по значению? Я также …

7
Java: лучший способ передать int по ссылке
У меня есть функция синтаксического анализа, которая анализирует закодированную длину из байтового буфера, она возвращает проанализированную длину как int и принимает индекс в буфер как целое число arg. Я хочу, чтобы функция обновляла индекс в соответствии с тем, что он анализирует, т.е. хочу передать этот индекс по ссылке. В C …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.