Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.61/41: Рейтинг темы: голосов - 41, средняя оценка - 4.61
45 / 45 / 1
Регистрация: 23.05.2009
Сообщений: 92

Закрытые поля структуры.

03.08.2009, 09:52. Показов 8214. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Существуют ли закрытые поля структуры?
Если да, то как их описывать?

Добавлено через 39 минут 26 секунд
Ну что никто не может ответить на такой легкий вопрос?
1
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.08.2009, 09:52
Ответы с готовыми решениями:

Закрытые поля класса
Здравствуйте.Помогите разобраться с кодом. Определен следующий класс: struct Cls { Cls(char c, double d, int i); private: ...

закрытые поля в C#
является ли это закрытым полем? public static readonly string ip; если нет то как оно выглядит ?

Нужны ли закрытые поля в приведенном классе
Привет всем) Нужны ли здесь закрытые поля, если да то как это сделать, если нет то почему: public class MathExpression { ...

21
depict1
 Аватар для zim22
281 / 146 / 4
Регистрация: 11.07.2009
Сообщений: 606
03.08.2009, 09:53
Цитата Сообщение от Skirmisher Посмотреть сообщение
Если да, то как их описывать?
C++
1
2
3
4
struct S {
 private:
  int data; 
};
0
45 / 45 / 1
Регистрация: 23.05.2009
Сообщений: 92
03.08.2009, 09:58  [ТС]
Цитата Сообщение от zim22 Посмотреть сообщение
C++
1
2
3
4
struct S {
 private:
  int data; 
};
Тут, как репутация считается, чем больше тем создал, тем меньше репутация?
Не все этот форум меня достал я с него ухожу
1
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
03.08.2009, 10:38
Тут, как репутация считается, чем больше тем создал, тем меньше репутация?
Нет - не так.
Не все этот форум меня достал я с него ухожу
Уходи.
Тебе ответили на твой вопрос.
А если тебе не нравится ответ - может ты вопрос задал неправильно ?
Правила Фурма
2.4 Как можно более полно описывайте суть проблемы или вопроса, что было сделано для ее решения и какие результаты получены.
0
 Аватар для oxotnik
1665 / 1134 / 80
Регистрация: 21.08.2008
Сообщений: 4,734
Записей в блоге: 1
03.08.2009, 10:42
Цитата Сообщение от Skirmisher Посмотреть сообщение
Существуют ли закрытые поля структуры?
Если да, то как их описывать?
собственно в С++ класс от структуры только этим и отличается... если надо что то спрятать, используй классы, если нет смысла прятать, используй стрктуры
0
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
03.08.2009, 10:48
собственно в С++ класс от структуры только этим и отличается...
Не понял - чем именно отличается ?
0
 Аватар для oxotnik
1665 / 1134 / 80
Регистрация: 21.08.2008
Сообщений: 4,734
Записей в блоге: 1
03.08.2009, 10:52
Цитата Сообщение от odip Посмотреть сообщение
Не понял - чем именно отличается ?
класс от структуры (class vs struct) отличается тем сто у структуры все члены public, в то время как у класса программист им сам может назначить public, private, protected.
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
03.08.2009, 10:58
класс от структуры (class vs struct) отличается тем сто у структуры все члены public, в то время как у класса программист им сам может назначить public, private, protected.
А теперь - правильный ответ (:
В классе все методы и члены имеют по-умолчанию модификатор доступа private, в структуре - public. Больше различий не имеется.
1
 Аватар для oxotnik
1665 / 1134 / 80
Регистрация: 21.08.2008
Сообщений: 4,734
Записей в блоге: 1
03.08.2009, 11:02
Цитата Сообщение от Rififi Посмотреть сообщение
класс от структуры (class vs struct) отличается тем сто у структуры все члены public, в то время как у класса программист им сам может назначить public, private, protected.
А теперь - правильный ответ (:
В классе все методы и члены имеют по-умолчанию модификатор доступа private, в структуре - public. Больше различий не имеется.
ага.. пермудрил
0
depict1
 Аватар для zim22
281 / 146 / 4
Регистрация: 11.07.2009
Сообщений: 606
03.08.2009, 11:43
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от Rififi Посмотреть сообщение
Больше различий не имеется.
имеется. при наследовании. если явно не указывать тип наследования, то для struct он public, а для class - private
***
Skirmisher, репутация ничто - главное что в голове.
0
 Аватар для BitFields
49 / 47 / 1
Регистрация: 03.08.2009
Сообщений: 101
03.08.2009, 12:30
Цитата Сообщение от zim22 Посмотреть сообщение
имеется. при наследовании. если явно не указывать тип
Кстати кто-нибудь знает, как получить доступ к закрытому полю структуры?
0
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
03.08.2009, 12:51
Кстати кто-нибудь знает, как получить доступ к закрытому полю структуры?
Никак - компилятор не даст.
0
 Аватар для Monte-Cristo
2816 / 1408 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
03.08.2009, 12:53
BitFields, в таких случаях, как правило... создается или метод ,который это поле буде изменять, или поле делают protected.
0
depict1
 Аватар для zim22
281 / 146 / 4
Регистрация: 11.07.2009
Сообщений: 606
03.08.2009, 13:08
Цитата Сообщение от BitFields Посмотреть сообщение
Кстати кто-нибудь знает, как получить доступ к закрытому полю структуры?
считаем значение из private переменной char c
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
struct S {
  S() : c('T'), i(10), d(12.23) { }
private:
  char c;
  int i;
  double d;  
};
int _tmain(int argc, _TCHAR* argv[])
{
  S s;  
  char res[1] = {0};
  memcpy(res, &s, 1);
 
  return 0;
}
1
 Аватар для BitFields
49 / 47 / 1
Регистрация: 03.08.2009
Сообщений: 101
03.08.2009, 13:12
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
BitFields, в таких случаях, как правило... создается или метод ,который это поле будет изменять, или поле делают protected.
Например имеется такой код:
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
26
27
28
struct GeeJail
{
    bool methodState(char *changeState); 
    private: 
            char *state;
};
 
int main()
{
    GeeJail Jail;
    char *text="Gaol";
    Jail.methodState(text);
}
 
bool GeeJail::methodState(char *changeState)
{
    bool tr;
    if(changeState)
    {
    GeeJail::state=changeState;
    tr=true;
    }
    else
    {
    tr=false;
    }
    return tr;
}
В принципе, так же как и с классами можно работать, различие только
В классе все методы и члены имеют по-умолчанию модификатор доступа private, в структуре - public. Больше различий не имеется.
0
 Аватар для Monte-Cristo
2816 / 1408 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
03.08.2009, 13:15
Цитата Сообщение от BitFields Посмотреть сообщение
В принципе, так же как и с классами можно работать, различие только
да
0
 Аватар для BitFields
49 / 47 / 1
Регистрация: 03.08.2009
Сообщений: 101
03.08.2009, 13:22
Цитата Сообщение от odip Посмотреть сообщение
Никак - компилятор не даст.
Что значит никак, метод создай.
0
 Аватар для Monte-Cristo
2816 / 1408 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
03.08.2009, 13:27
BitFields, ну вообще-то мы с odip подумали что вы спрашиваете про наследование, тобишь про вот этот вариант:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class A
{
    private:
        int a;
    public:
        A(): a(0) {}
};
 
class B: public A
{
    public:
        B() {}
        void Set(int x) { a = x; } // вызовет ошибку
};
0
 Аватар для BitFields
49 / 47 / 1
Регистрация: 03.08.2009
Сообщений: 101
03.08.2009, 13:38
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
BitFields, ну вообще-то мы с odip подумали что вы спрашиваете про наследование, тобишь про вот этот вариант:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class A
{
    private:
        int a;
    public:
        A(): a(0) {}
};
 
class B: public A
{
    public:
        B() {}
        void Set(int x) { a = x; } // вызовет ошибку
};
Вроде мы тут о структурах говорим! Лучше бы тогда пример про наследованием структур.
0
depict1
 Аватар для zim22
281 / 146 / 4
Регистрация: 11.07.2009
Сообщений: 606
03.08.2009, 13:41
Цитата Сообщение от BitFields Посмотреть сообщение
Вроде мы тут о структурах говорим! Лучше бы тогда пример про наследованием структур.
замените слово class на слово struct. и пример готов.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.08.2009, 13:41
Помогаю со студенческими работами здесь

Закрытые поля класса или аргументы метода?
Что сейчас наиболее подходит для C#5 и в каких случаях - передавать в метод аргументы или считывать необходимые методу данные из полей...

Использование свойств для чтения и записи данных в закрытые поля класса
Добрый день ! Как я понял свойства используют для чтения и записи данных в закрытые поля класса через какую-ту левую переменную как...

Создайте класс Конус, определите в нем закрытые поля Радиус, Высота, Образующая, свойства для этих полей
Создайте класс Конус, определите в нем закрытые поля Радиус, Высота, Образующая, свойства для этих полей, методы вывода сведений об...

Описать класс "товар", содержащий закрытые поля
Описать класс «товар», содержащий следующие закрытые поля: • название товара; • название магазина, в котором продается товар; •...

Поля структуры в индексаторе
Подскажите как сделать красиво ) В структуре поля одного типа. Хотелось бы иметь возможность обращаться к ним по индексу. Кроме...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
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
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru