Как вызвать метод?

3 ноября 2014 г. Просмотров: 701
Объектно-ориентированная методология значительно облегчает процесс программирования. Используемые в ее рамках классы и их экземпляры – объекты, расширяют возможности для решения любой задачи. Функции класса, описывающие всевозможное поведение объектов, называются методами. В зависимости от заданного при разработке класса модификатора (public, protected, private), доступ к его методам может осуществляться разными способами. Большое значение здесь имеет и точка вызова функции.

Инструкция

  • При любом обращении к классу следует учесть область его видимости. Целесообразно файл с описанием класса указывать в начале кода программы. Для этого напишите конструкцию вида #include “File_name.h”. Либо вставьте там же сам код описания. Перед вызовом метода инициализируйте объект с помощью записи: CClass1 Obj1, здесь CClass1 – имя класса, Obj1 – название объекта. Наряду с объектом класса могут использоваться и указатели под его экземпляр. В этом случае объявите указатель и выделите память: CClass1 *Obj2 = new CClass1().
  • Вызовите метод объекта с помощью следующей команды: Obj1.metod1(), здесь при обращении используется оператор «.» (точка). При работе с указателем на экземпляр класса поставьте оператор «->»: Obj2->metod1(). Учитывайте область видимости объекта или указателя. Так, при объявлении переменной в рамках одной функции, она будет невидна компилятору за ее пределами.
  • Если метод класса описан со спецификатором доступа public, вызвать его можно вышеуказанными способами из любой точки программы. Однако зачастую методы, в целях защиты данных, получают статус скрытых. Так, при декларации с помощью private функция может быть доступна только внутри своего класса. Вызов ее выполняется лишь в рамках другого метода экземпляра того же класса. Модификатор protected также закрывает использование метода для стороннего кода, но предоставляет такую возможность для дочерних классов.Пример вызова метода в наследуемом классе:class A // родительский класс{ protected: void funcA();};class B: public A // наследуемый (дочерний) класс{ public: void funcB(){ funcA(); } // вызов метода родительского класса};
  • При обращении к методу класса в другой функции того же класса создавать его экземпляр ненужно. Достаточно указать имя метода и передаваемые параметры.Пример кода вызова метода:class CClass2{ void func1(int k); void func2() { func1(50); }};
  • Существует еще один способ получить доступ к методу без создания экземпляра класса. Однако для этого требуется, чтобы указанный метод был объявлен в классе как статический.Пример описания метода в классе:class CClass3{static int func3();}В этом случае вызов метода func3 можно выполнить в любом месте программы с помощью конструкции: CClass3::func3().
  • Оцените статью!