Запитання з тегом «pass-by-reference»

Передати посилання - це стратегія аргументації, за якою розташування змінної в пам'яті передається функції, а не копії значення змінної, хоча функція з'являється у вихідному коді для отримання самої змінної, а не вказівника на неї.

30
Чи Java "прохідна посилання" чи "пропускна вартість"?
Я завжди думав, що Java проходить через посилання . Однак я бачив пару публікацій в блозі (наприклад, цей блог ), які стверджують, що це не так. Я не думаю, що я розумію різницю, яку вони роблять. Яке пояснення?

26
Як передати змінну за посиланням?
Документація Python видається незрозумілою щодо передачі параметрів за посиланням чи значенням, і наступний код створює незмінене значення "Original" class PassByReference: def __init__(self): self.variable = 'Original' self.change(self.variable) print(self.variable) def change(self, var): var = 'Changed' Чи можу я щось зробити, щоб передати змінну за фактичною довідкою?

30
Чи JavaScript - це мова проходження посилань або мова про значення?
Примітивні типи (число, рядок тощо) передаються за значенням, але об'єкти невідомі, оскільки вони можуть бути як переданими за значенням (якщо ми вважаємо, що змінна, що містить об'єкт, насправді є посиланням на об'єкт ) і передається посилання (коли ми вважаємо, що змінна на об'єкт містить сам об'єкт). Хоча це насправді не …


12
Чому я повинен використовувати ключове слово "final" у параметрі методу на Java?
Я не можу зрозуміти, де finalключове слово дійсно зручно, коли воно використовується в параметрах методу. Якщо виключати використання анонімних класів, читабельність та декларацію про наміри, то мені це здається майже непридатним. Забезпечення того, що деякі дані залишаються постійними, не є настільки сильним, як здається. Якщо параметр є примітивним, він не …


11
Навіщо використовувати ключове слово 'ref' при передачі об'єкта?
Якщо я передаю об'єкт методу, чому я повинен використовувати ключове слово ref? Чи не так це поведінка за замовчуванням? Наприклад: class Program { static void Main(string[] args) { TestRef t = new TestRef(); t.Something = "Foo"; DoSomething(t); Console.WriteLine(t.Something); } static public void DoSomething(TestRef t) { t.Something = "Bar"; } } …

13
Передайте змінні за посиланням у Javascript
Як я можу передавати змінні за посиланням у JavaScript? У мене є 3 змінні, до яких я хочу виконати кілька операцій, тому я хочу помістити їх у цикл for і виконати операції для кожної з них. псевдокод: myArray = new Array(var1, var2, var3); for (var x = 0; x < …

8
Чи копіюються масиви в PHP як значення або як посилання на нові змінні та коли передаються функції?
1) Коли масив передається як аргумент методу чи функції, чи передається він посиланням чи значенням? 2) При призначенні масиву змінній чи нова змінна є посиланням на вихідний масив чи це нова копія? Що з цим робити: $a = array(1,2,3); $b = $a; Чи $bє посилання на $a?


7
Як передавати об’єкти функціям в C ++?
Я новачок у програмуванні на C ++, але маю досвід роботи в Java. Мені потрібні вказівки щодо передачі об'єктів функціям на C ++. Чи потрібно мені передавати вказівники, посилання чи не-вказівні та неопосилання? Пам’ятаю, у Java таких питань немає, оскільки ми передаємо лише змінну, яка містить посилання на об’єкти. Було …

13
Чи проходить Ruby за посиланням чи за значенням?
@user.update_languages(params[:language][:language1], params[:language][:language2], params[:language][:language3]) lang_errors = @user.errors logger.debug "--------------------LANG_ERRORS----------101-------------" + lang_errors.full_messages.inspect if params[:user] @user.state = params[:user][:state] success = success & @user.save end logger.debug "--------------------LANG_ERRORS-------------102----------" + lang_errors.full_messages.inspect if lang_errors.full_messages.empty? @userоб'єкт додає помилки до lang_errorsзмінної в update_lanugagesметоді. Коли я виконую збереження на @userоб'єкті, я втрачаю помилки, які були спочатку збережені у lang_errorsзмінній. Хоча …

7
Передача об'єктів за посиланням або значенням у C #
У C # я завжди думав, що непримітивні змінні передаються за посиланням, а примітивні значення передаються за значенням. Отже, переходячи до методу будь-який непомітний об'єкт, все, що робиться об'єкту в методі, вплине на переданий об'єкт. (C # 101 речі) Однак я помітив, що коли я передаю об'єкт System.Drawing.Image, це, здається, …

7
Чи є переваги проходження вказівника над проходженням посиланням на C ++?
Які переваги проходження за вказівником над проходженням за посиланням в C ++? Останнім часом я бачив ряд прикладів, які вибирали аргументи функції передачі вказівниками замість передачі посилання. Чи є користь від цього? Приклад: func(SPRITE *x); із закликом func(&mySprite); vs. func(SPRITE &x); із закликом func(mySprite);

13
Передача властивостей за посиланням у C #
На цей питання є відповіді на Stack Overflow на російському : Передача властивостей з методом з модифікатором ref і out Я намагаюся зробити наступне: GetString( inputString, ref Client.WorkPhone) private void GetString(string inValue, ref string outValue) { if (!string.IsNullOrEmpty(inValue)) { outValue = inValue; } } Це дає мені помилку компіляції. Я …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.