![]() |
|
Модераторы: Akina |
![]()
|
|
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
не нашёл такого в мсдн (вроде как такого в vb6 нет)
у кого-нибудь есть светлые идеи, как это реализовать средствами языка? --------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 26 Всего: 49 |
Светлые идею появятся сразу, как только будет ясно что такое конструктор копирования.
Ты просвети нас. -------------------- Я желаю всем Счастья! |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
в C++ есть такое понятие как "конструктор копирования"
т.е. при присваивании объекту А объекта Б копируется не ссылка а копия объекта Б (причём создаётся эта копия автоматически) --------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 26 Всего: 49 |
Ну мы С++ не изучали...
Если говорить о рантайм, то посмотри инструкции ByVal и ByRef. Если времени разработки - то я не понял вопроса. -------------------- Я желаю всем Счастья! |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
рантайм
пример использования:
--------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 26 Всего: 49 |
Мда...
Интересный вопрос. Будем думать. -------------------- Я желаю всем Счастья! |
|||
|
||||
| Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 26 Всего: 49 |
Подумал я пришел к выводу что стандартными и известными мне нестандартными способами этого не решить.
Вопрос: ты работаеш с самописными классами? т.е. нужно создать копию своего класса? Со своим классом решение есть. С чужим - только ручками. -------------------- Я желаю всем Счастья! |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
со своим, я про это же и спрашиваю --------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 26 Всего: 49 |
Решение опять-же Ручками, но случай тут частный, так как известна вся подноготная класса.
Создай в классе функцию создания копии. Ну например так:
-------------------- Я желаю всем Счастья! |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
я же спрашиваю про неявное копирование, явное - ясное дело - очевидно...
--------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 26 Всего: 49 |
Да я понимаю.
Но с неявным копированием напряг. -------------------- Я желаю всем Счастья! |
|||
|
||||
| Voldemar2004 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1650 Регистрация: 25.12.2004 Репутация: 7 Всего: 23 |
Имхо конструктор копирования применяется, когда мы создаем свой собственный объект (а в ВБ все объекты уже готовы - все остается только на совести разработчиков), одним из полей которого является указатель на тип. Если не создать КК, будет утечка памяти, если нет КК компилятор сам его создаст, но тоже будет утечка памяти.
Оффтоп: долго не мог понять по названию темы: я в С++ или в... -------------------- i_i (';') (V) ![]() |
|||
|
||||
| JUmPER |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
родил-таки я =)
правда кривовато, но бейсик лучше это сделать не даёт сам класс:
демострация
--------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
||||
|
|||||
| Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 26 Всего: 49 |
JUmPER, это не есть решение. Это но копирование класса. Это задание одного единственного свойства по умолчанию в момент инициализации.
Это совсем не то о чем вы спрашивали. -------------------- Я желаю всем Счастья! |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
наоборот, это и есть неявное создание нового экземпляра класса при копировании, что собственно и требовалось
т.е. после присвоения существуют два независимых экземпляра --------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
![]()
|
| Правила форума "VB6" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | VB6 | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |