| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > передача приватных данных между классами |
| Автор: Mr_Nuke 17.5.2011, 17:51 | ||||
Подскажите, хочу передать указатель in из класса file в класс A.
Пробовал объявить класс file дружественным к классу А и передать объект класса file в метод класса A в виде параметра. Может не правильно делал, но выдавал ошибку доступа. (Если так сделать нельзя, то вообще не понимаю, зачем нужна дружба)
И последний способ, пытался вернуть ссылку на in и через главную программу передать значение в класс A. Надоело наугад ставить значки "*" и "&", поэтому обратился за помощью сюда! |
| Автор: Cheloveck 17.5.2011, 18:05 | ||
Только возвращать не константную ссылку на приватный член - не хорошо. Подумай над задачей получше! |
| Автор: Mr_Nuke 17.5.2011, 18:28 | ||||||
| Cheloveck, скорее, я просто не понимаю, как на практике применить * и &. Путем рандомного тыкания у меня появилось 3 варианта, и в обоих ошибка доступа :(
|
| Автор: mes 17.5.2011, 19:43 |
A::in1 никакого отношения не имеет к file::in1 |
| Автор: Mr_Nuke 17.5.2011, 19:47 |
| mes, это я понимаю... только не пойму, где у меня показано обратное... |
| Автор: Mr_Nuke 17.5.2011, 23:08 | ||
Ну с этим по понятней! Но все же интересует, как из одного класса изменять приватные данные другого! |
| Автор: mes 17.5.2011, 23:58 |
также как и не приватные, если изменяет их друг или через публичные методы первого.. |
| Автор: Mr_Nuke 18.5.2011, 00:23 |
| эм. Может я тебя не совсем понял. посмотри мой первый пост, второй блок. Там я делал через друга, но появляется ошибка доступа |
| Автор: mes 18.5.2011, 00:36 |
вот тот же ужас, но в рабочем состоянии : http://liveworkspace.org/code/cae083da92a724ac9d1370853a8e25b8 |
| Автор: Mr_Nuke 18.5.2011, 07:18 |
| mes, хоть в написанном там коде для меня не все понятно, но результатом я доволен!! Спасибо))))) |