Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2018, 20:28   #1
luminoforest
 
Регистрация: 17.04.2018
Сообщений: 9
По умолчанию пример из Шилдта

всё, разобралась. было ошибочное представление о хранении экземпляра как его имени
--------
где комментарий "Создает объект и тут же уничтожает его" имеется в виду что он деструктором уничтожается? я проверила, деструктором уничтожается не сразу и не каждый объект, а партиями создаются-уничтожаются. или в этом контексте под уничтожением подразумевается что-то другое?
создавать экземпляры с одинаковым именем нельзя, но в цикле получается 100тыс раз вызывается оператор создания экземпляра с именем "о"? и создаются ли в цикле переменные х , или у неё только изменяется значение?()
в общем, я вообще запуталась в том, что здесь происходит
Код:
using System;
class Destruct
{
public int x;
public Destruct(int i)
 {
х = i;
 ~Destruct() {
Console.WriteLine("Уничтожить " + х);
}

// Создает объект и тут же уничтожает его.(???)
public void Generator(int i)
 {
 Destruct о = new Destruct(i);
 }

}
class DestructDemo {
static void Main() {
  int count;
  Destruct ob = new Destruct(0);
  for(count=1; count < 100000; count++)
  {
    ob.Generator(count);
  }
 Console.WriteLine( "Готово!");
}

Последний раз редактировалось luminoforest; 18.04.2018 в 00:05.
luminoforest вне форума Ответить с цитированием
Старый 17.04.2018, 20:47   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Цитата:
где комментарий "Создает объект и тут же уничтожает его" имеется в виду что он деструктором уничтожается?
Да, переменная о покидает область видимости и будет отдана на растерзание GC

Цитата:
я проверила, деструктором уничтожается не сразу и не каждый объект, а партиями создаются-уничтожаются. или в этом контексте под уничтожением подразумевается что-то другое?
Ну да. Так работает по дефолту сборщик мусора + создание объектов легкое, пока до него дойдет.

Цитата:
но в цикле получается 100тыс раз вызывается оператор создания экземпляра с именем "о"
Выполняется создание и уничтожение.

Цитата:
и создаются ли в цикле переменные х , или у неё только изменяется значение?()
Оно же поле класса. С объектом создается и уничтожается.
p51x вне форума Ответить с цитированием
Старый 17.04.2018, 21:12   #3
luminoforest
 
Регистрация: 17.04.2018
Сообщений: 9
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Выполняется создание и уничтожение.
Цитата:
Сообщение от p51x Посмотреть сообщение
создание объектов легкое, пока до него дойдет.
экземпляр о всё же сразу удаляется после создания или "пока до него дойдёт" таких объектов существует до удаления несколько одновременно?
(спасибо, теперь хотя бы стало понято что с полем класса происходит)
простите, что меня так клинит. всё же боюсь продолжать читать не разобравшись
luminoforest вне форума Ответить с цитированием
Старый 18.04.2018, 07:59   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Почитайте https://ru.wikipedia.org/wiki/%D0%A1...BE%D1%80%D0%B0
p51x вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пример Olesya9771 Общие вопросы .NET 0 06.05.2017 19:47
как из файла "Пример Меню" не очень подкованный пользователь сможет сделать файл устроенный так же как "Пример импорта" qaws Помощь студентам 2 10.09.2016 14:49
Вопрос по задаче Герберта Шилдта с++ aleika Общие вопросы C/C++ 0 03.11.2012 15:10
Что бы почитать после Шилдта? AlexanderM C# (си шарп) 1 16.03.2012 00:33
крестики нолики от Шилдта tem_80 Общие вопросы C/C++ 2 17.02.2011 10:40