С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 13.02.2011
Сообщений: 40
1

Исключительный доступ обьекта к полям другого обьекта avr/c++

16.11.2016, 00:35. Показов 1237. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
исключительный доступ обьекта к полям другого обьекта avr/c++

добрый день

есть два обьекта Data & Math
- Data - элемент данных
- Data*[] - список данных
- Math - математика (нужен ИСКЛЮЧИТЕЛЬНЫЙ доступ к ДАННЫМ)

если поместить поля Data в секцию public, то при этом будет доступ извне Math
нужно что-бы к полям Data был доступ ТОЛЬКО из Math, всем остальным - отказ.
возможно ли такое?

avr-gcc/arduino
можно ссылками, идеями, ключ.словами, волшебными пендюлями
схемотехника примерно такая

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
///////////////////////////////////////////////////////////////////////////////
 
#define DATA_SIZE     3
 
class TData
{
//private:
//protected:
public:
  int a = 1;
  int b = 2;
  int c = 3;
};
 
class TMatch
{
public:
  // получить доступ к полям обьекта TData
  int get_a(byte i) { return data[i]->a; };
 
private:
  TData** data;
};
 
///////////////////////////////////////////////////////////////////////////////
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.11.2016, 00:35
Ответы с готовыми решениями:

Инициализация обьекта внутри другого класса
Всем привет. Вообщем проблема такая. Есть несколько классов class WeaponType { }; class...

Передвижение обьекта
Нужно написать программу передвижения обьекта.Программа показывает поле XXXXX XIOOX XOOOX XOOOX...

Дескриптор обьекта
Работаю в Visual Studio,как на WinApi узнать дескриптор(HWND) объекта? Есть функция GetDlgItem,но...

Сравнение обьекта
Почему тут(39) написано if (this == &rhs) а не if (this == rhs)? // Листинг 10.15. ...

4
19409 / 10028 / 2443
Регистрация: 30.01.2014
Сообщений: 17,678
16.11.2016, 00:43 2
sunjob, ну сделай класс TMatch другом классу TData, а данные у TData в private убери.
0
0 / 0 / 0
Регистрация: 13.02.2011
Сообщений: 40
16.11.2016, 00:45  [ТС] 3
не понял, на пальцах можно обьяснить (или макетом набросать)
звучит как в один класс вставить другой
0
19409 / 10028 / 2443
Регистрация: 30.01.2014
Сообщений: 17,678
16.11.2016, 00:48 4
Лучший ответ Сообщение было отмечено sunjob как решение

Решение

Цитата Сообщение от sunjob Посмотреть сообщение
на пальцах можно обьяснить (или макетом набрасать)
Да можно, конечно...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class TMatch;
 
class TData
{
    friend class TMatch;
private:
    int a = 1;
    int b = 2;
    int c = 3;
};
 
class TMatch
{
public:
// получить доступ к полям обьекта TData
    int get_a(byte i) { return data[i]->a; };
 
private:
    TData** data;
};
1
0 / 0 / 0
Регистрация: 13.02.2011
Сообщений: 40
16.11.2016, 00:49  [ТС] 5
ну блин, а я то думаю почему в друзья не могу добавить математику... :о)
спасибо, буду попробовать

п.с. проверил, ну что же, avr-gcc на каркас не ругается, жму лапу, кланяюсь!!!
0
16.11.2016, 00:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.11.2016, 00:49
Помогаю со студенческими работами здесь

Передача обьекта в функию
Изучаю прогу в универе, понадобилось сделать обьект как аргумент функции.ООП ещё не изучали.Как...

Передача в функцию обьекта
Всем привет. В интернете ничего не нашел по этому поводу: Я делаю шашки и у меня есть класс USER...

Возвращение обьекта из шаблона
Всем доброго дня ! Не могу понять в чем проблема ((( Есть класс шаблон А template <class...

Не работает создание обьекта
#include <stdio.h> struct Point { float x, y, z; Point(float _x, float _y, float...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru