Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
95 / 95 / 15
Регистрация: 11.11.2010
Сообщений: 424

Методы.

23.04.2011, 16:38. Показов 1381. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class Zet
    {
         public void Increase(string[] a)
            {
                Array.Resize(ref a,a.Length+1)
            }
     }
 
public partial class Form1 : Form
    {
        Zet b= new Zet();
        public Form1()
        {
            InitializeComponent();
        } 
           private void Button1_Click(object sender, EventArgs e)
               {
                    string[] n = new string[1];
                    b.Increase(n);
                    textBox1.Text=n[1];
                }
    }
Собственно вопрос. Будет ошибка или нет при нажатии на кнопку?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.04.2011, 16:38
Ответы с готовыми решениями:

Методы
Все задачи решить в одной программе. Условия задач вывести на экран консоли из текстовых файлов (Условие1.txt, Условие2.txt,...

Методы
Код для решения задачи желательно что бы было похоже на это(знаю что не работает но похожее что то я думаю можно создать) using System; ...

Методы
В класс банковский счет, созданный в упражнениях 7.1- 7.3 добавить метод, который переводит деньги с одного счета на другой. У метода...

10
мастер топоров
 Аватар для Koran
917 / 742 / 101
Регистрация: 16.08.2009
Сообщений: 1,476
23.04.2011, 17:44
не должно.
вы увеличиваете длину массива, при этом этот член у вас заполняется значением по умолчанию, для стринга это string.Empty и вы выводите добавленный элемент
1
Неадекват
 Аватар для freeba
1501 / 1237 / 248
Регистрация: 02.04.2010
Сообщений: 2,807
23.04.2011, 17:46
Ошибки не будет. Но исходный массив не измениться.
1
95 / 95 / 15
Регистрация: 11.11.2010
Сообщений: 424
23.04.2011, 17:48  [ТС]
Я думал аналогично! Но выдаёт ошибку.. Выход за границы массива.

Добавлено через 55 секунд
Цитата Сообщение от freeba Посмотреть сообщение
Ошибки не будет. Но исходный массив не измениться.
Исходный массив не изменится в каком смысле? Длина должна увеличиться. Или я заблуждаюсь?
0
Неадекват
 Аватар для freeba
1501 / 1237 / 248
Регистрация: 02.04.2010
Сообщений: 2,807
23.04.2011, 17:51
Неправильно выразился - синтаксис верный, но исходный массив не измениться -> ты обращаешся к несуществующему элементу.

Добавлено через 1 минуту
Цитата Сообщение от Guliash Посмотреть сообщение
public void Increase(string[] a)
будет создан новый экземпляр а
1
мастер топоров
 Аватар для Koran
917 / 742 / 101
Регистрация: 16.08.2009
Сообщений: 1,476
23.04.2011, 17:55
Guliash, а ты передай в метод массив через ref
1
95 / 95 / 15
Регистрация: 11.11.2010
Сообщений: 424
23.04.2011, 17:55  [ТС]
Цитата Сообщение от freeba Посмотреть сообщение
Неправильно выразился - синтаксис верный, но исходный массив не измениться -> ты обращаешся к несуществующему элементу.

Добавлено через 1 минуту

будет создан новый экземпляр а
То есть связи между аргументом и параметром нету? При изменении параметра, аргумент не меняется?
0
мастер топоров
 Аватар для Koran
917 / 742 / 101
Регистрация: 16.08.2009
Сообщений: 1,476
23.04.2011, 17:57
C#
1
2
3
4
         public void Increase(ref string[] a)
            {
                Array.Resize(ref a,a.Length+1)
            }
вродь так
1
Неадекват
 Аватар для freeba
1501 / 1237 / 248
Регистрация: 02.04.2010
Сообщений: 2,807
23.04.2011, 17:59
Цитата Сообщение от Guliash Посмотреть сообщение
То есть связи между аргументом и параметром нету? При изменении параметра, аргумент не меняется?
В точку.
1
95 / 95 / 15
Регистрация: 11.11.2010
Сообщений: 424
23.04.2011, 18:07  [ТС]
Цитата Сообщение от Koran Посмотреть сообщение
C#
1
2
3
4
         public void Increase(ref string[] a)
            {
                Array.Resize(ref a,a.Length+1)
            }
вродь так
Работает, только при вызове метода придётся перед аргументом тоже указывать ref

Добавлено через 2 минуты
ref
0
мастер топоров
 Аватар для Koran
917 / 742 / 101
Регистрация: 16.08.2009
Сообщений: 1,476
23.04.2011, 18:26
мне не нравится ваше "придется" - таков синтаксис языка: и ref и out при вызове функции также указываются. вот вы же когда писали Array.Resize(ref a,a.Length+1), то ref тоже указывали и не говорили что "приходится его указывать"
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.04.2011, 18:26
Помогаю со студенческими работами здесь

Методы
Добрые день! Программка выводит на экран только положительные числа из массива. Все работает. Но, так как я только начинаю вникать - у меня...

Методы
Метод, заменяющий в массиве целых чисел четные значения на 1. Метод, вычисляющий среднее значение среди отрицательных вещественных...

Методы
Здравствуйте помогите решить задачу: Дано натуральное число n. Выяснить, имеются ли среди чисел: n, n+1, ...,2*n - близнецы, т.е. ...

методы
подскажите пожалуйста как обменяться переменными между методами одного класса. в одной книжке прочитал, что они глобальные , но в моём...

Статические методы
Не понял я сабж! Если у нас метод определен как статический то к нему можно обратиться не создавая объекта класса. К примеру: class...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru