Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
asiar
0 / 0 / 0
Регистрация: 08.12.2009
Сообщений: 12
#1

метод-доступа, класс, объекты - C++

21.11.2010, 23:03. Просмотров 353. Ответов 2
Метки нет (Все метки)

из книги С++ за 21 день Джесса Либерти
Если объявить класс Cat с закрытым членом itsAge, а затем определить два объекта Cat с именами Frisky и Boots, то может ли объект Boots получить доступ к переменной-члену itsAge объекта Frisky?

Да. Закрытые данные доступны для функции-членов класса, и различные экземпляры одного класса могу обращаться к данным друг друга. Иными словами, если Frisky и Boots являются экземплярами класса Cat, то функции-члены объекта Frisky могут получить доступ как к своим данным (данным объекта Frisky), так и к данным объекта Boots.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <cstdlib>
#include <iostream>
 
using namespace std;
class Cat {
  public:
      void SetAge(int age) { itsAge=age; }
      int  GetAge() { return itsAge; }
  private:
      int itsAge;
};
 
int main()
{
    Cat Frisky, Boots;
    
    
    system("pause");
    return EXIT_SUCCESS;
}
плииз
подскажите
как это сделать ???
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2010, 23:03
Здравствуйте! Я подобрал для вас темы с ответами на вопрос метод-доступа, класс, объекты (C++):

Статический метод и объекты - C++
Есть класс А с полями, методами и один статический метод. Как мне через этот статический метод обратиться сразу ко всем объектам этого...

Классы и объекты (Класс Student) - C++
Разработать консольную программу на языке С++, в которой описывается и используется простой класс для объектов индивидуального варианта....

Класс содержащий объекты другого класса - C++
Наткнулся на такую ситуацию. Как одно поле класса делают объект другого класса со своим конструктором. Типа class second { ...

Производный класс: метод возведения в произвольную степень, и метод для вычисления логарифма числа - C++
Реализовать класс-оболочку Number для числового типа float. Реализовать методы сложения и деления. Создать производный класс Real, в...

Класс vector (поля: координаты, 2 конструктора, метод нахождения длины вектора и метод вывода координат на экран) - C++
Здравствуйте , помогите пожалуйста с заданием. Организовать класс Вектор на плоскости – поля: координаты, 2 конструктора, метод...

Указатель на массив указателей на объекты, передать в метод объекта - C++
Здравствуйте! Нужно решить задачу, есть такой класс. class MyClsDisk { public: void...

2
SashaPinsk
39 / 37 / 2
Регистрация: 27.12.2009
Сообщений: 73
22.11.2010, 00:00 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <cstdlib>
#include <iostream>
 
class Cat {
  public:
      void SetAge(int age) { itsAge=age; }
      int  GetAge() { return itsAge; }
  private:
      int itsAge;
};
 
int main()
{
    Cat Frisky, Boots;
    Frisky.SetAge(5); //устанавливаем новое значение переменной itsAge
    std::cout << Frisky.GetAge() << std::endl; //получаем значение переменной itsAge
    system("pause");
    return EXIT_SUCCESS;
}
0
alexzak
84 / 57 / 1
Регистрация: 07.08.2010
Сообщений: 185
22.11.2010, 01:12 #3
Цитата Сообщение от asiar Посмотреть сообщение
подскажите
как это сделать ???
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class Cat {
  public:
      explicit
      Cat(int age) : itsAge(age) {}
      Cat(Cat const & other) : itsAge(other.itsAge) {}  // вот здесь имеем доступ с закрытым данным другого объекта того-же типа
 
      void SetAge(int age) { itsAge=age; }
      int  GetAge() { return itsAge; }
  private:
      int itsAge;
};
 
int main()
{
    Cat Frisky(4);
    Cat Boost(Frisky);
 
    cout << Boots.GetAge() << endl;  // выводит 4
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.11.2010, 01:12
Привет! Вот еще темы с ответами:

Програма в которой объекты одного класса вложены в другой класс - C++
приведите пример програмы c++, где объекты одного класса вложенные в другой класс. Для чего это нужно

Добавить векторы, хранящих объекты соответствующих классов, в данный класс - C++
Не понимаю, помогите разобраться, пожалуйста)) Класс Field предназначен для управления полем (двумерный массив типа char) и хранения...

Реализовать класс «Проект» и создать объекты данного класса с разными способами инициализации - C++
 -Объявить класс «Проект» с данными номер проекта, сумма, дата исполнения и определить для него конструктор по умолчанию, конструктор...

Создать класс, объекты которого моделируют комплексные числа с перегрузкой необходимых операций - C++
Необходимо за 30 минут Создать класс, объекты которого моделируют комплексные числа с перегрузкой необходимых операций. Помогите пожалуйста...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru