Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/41: Рейтинг темы: голосов - 41, средняя оценка - 4.63
5 / 5 / 0
Регистрация: 28.06.2013
Сообщений: 116

Как перезаписать переменную в другом классе

01.07.2013, 06:35. Показов 7596. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Например есть 2 класса:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class odin
{
 int peremennaya;
 
class dva
 {
   public string method1(int i, out int j, out int k)
   {
      odin o = new odin();
      o.peremennaya = 5;
      // как вот тут мне написать чтобы переменная в классе один перезаписалась на новое значение, а не на ссылку из этого метода. Или как её легко получить кроме out и ref
   }
 }
 public void method2()
  {
    
  }
}
и сразу второй вопрос:
если есть два метода
C#
1
2
3
4
5
6
7
8
public void method1(int j, int i)
{
 
}
public void method2()
{
method1(5, ...) //можно ли как-нибудь сделать так, чтобы не надо было вводить, а просто пропустить аргумент.
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.07.2013, 06:35
Ответы с готовыми решениями:

Как перенести значение одной переменной в другую переменную в другом классе
Вот часть кода : static void Main(string args) { int choise; Console.WriteLine(@" C# FreePascal ...

Вызвать переменную в другом классе
Подскажите я сделал отдельный класс Version и там сделал public void VersionServer() Как мне в классе Program в static void Main(string...

Как использовать объект класса, созданого в определеном классе, в другом классе
У меня такой вопрос,как использовать объект класса,созданого в определеном классе,в другом классе.У меня есть объект pl класса Player,это...

6
1 / 1 / 0
Регистрация: 31.01.2012
Сообщений: 64
01.07.2013, 08:25
тебе скорее всего нужно чтоб переменная первого класса была статической.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class odin
{
static int peremennaya;
 }
class dva
 {
   public string method1(int i, out int j, out int k)
   {
      o.peremennaya = 5;
     
   }
 
 public void method2()
  {
    
  }
}
Если два метода то: нужно объявить переменную полем класса(!) и изменять её в каком угодно методе.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class Example
 {
int example=1;
   public string method1(int i, out int j, out int k)
   {
      example = 5;
      
   }
 
 public void method2()
  {
    example = 7;
  }
}
Про второй вопрос: используйте перегрузки метода, читайте про них в книжках

Не по теме:


А вообще читайте Шилдта чтобы небыло подобных вопросов и подобного кода...
Класс в классе - это нечто...

1
5 / 5 / 0
Регистрация: 28.06.2013
Сообщений: 116
01.07.2013, 08:39  [ТС]
спасибо, только 2 ответ немного не понял.

Не по теме:

У меня есть Шилдт, но там сложно

0
78 / 60 / 9
Регистрация: 26.06.2013
Сообщений: 198
01.07.2013, 09:49
Gomg, не совсем понятно, что вам нужно по первому вопросу.
А насчет "Класс в классе - это нечто..." Так вот вложенный тип (в данном случае класс) вполне может существовать, если он, например, является вспомогательным и используется только внутри внешнего типа. При этом вложенный тип может получить доступ ко всем закрытым и защищенным членам внешнего типа. Так что первый код в первом посте почти рабочий (если присвоить значения выходным параметрам и вернуть из метода строку). Только вложенный класс dva по умолчанию закрытый и что с ним делать не понятно.
По поводу перегрузки:
C#
1
2
3
4
5
6
7
8
public void method1(int j, int i) // перегруженный метод, принимает 2 параметра int.
{
 
}
public void method1(int j) // перегруженный метод, принимает 1 параметр int.
{
 
}
0
369 / 341 / 108
Регистрация: 12.02.2013
Сообщений: 653
01.07.2013, 10:12
Про перегрузку методов:
если ты будешь вызывать метод объекта класса Example так вот ob.method() ...т.е. не передавая ему аргументов, то он вызовет метод с example = 7, иначе - наоборот
0
01.07.2013, 13:04

Не по теме:

Gomg, Фленова пробовали?
nxtech, вложенные типы ещё не встречал)

0
01.07.2013, 13:05  [ТС]

Не по теме:

нет

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.07.2013, 13:05
Помогаю со студенческими работами здесь

Как использовать информацию парсированую в 1 классе в другом классе
имеются 2 класса , объясните плз в чём ошибка using System; using System.Collections.Generic; using System.Linq; using System.Text;...

Как использовать функцию в другом классе
Есть класс, в нем функция: public void ShowNotificationBaloon(string message, string title="") { nIcon.BalloonTipIcon =...

Как вывести список в другом классе
Подскажите пожалуйста, мне нужно создать отдельный класс, который будет выводить List, как это сделать?

Как работать с переменными, объявленными в другом классе?
Добрый день! Помогите, пожалуйста, объявила через конструктор переменные. затем запускается Menu(). Оттуда переходим в Ans1. Как...

Как получить ссылку на объект (структуру) в другом классе
Долгое время об этом не задумывался, т.к. программы были маленькие, но теперь у меня несколько классов и интерфейсов в разных файлах .cs,...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru