Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
3курс инф .docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
652.25 Кб
Скачать

71. Объектілік жолынын қурылу бөлімдері. Программалау парадигмасы.

Бізге керекті объектіні біз заголовочный файлдағы хабарлама арқылы,яғни осы жерге сол объектіге сілтеме модулі арқылы қол жеткіземізTLabel *Label1;Бұл жол Label1-ді Tlabel типтегі сілтеме ретінде жариялап тұр.

72. Абстракция. Инкапсуляция. Модулдік.

Абстракция - кейбір объекттердiң маңызды мiнездемелерін ерекшелейтін, барлық басқа объект түрлерiнен айырмашылығы болатын және оның бақылаушы көзқарасы бойынша концептуалды шекараларын анықтайды.

typedef float Temperature; typedef unsigned int Location;

classTemperatureSensor {

public:

TemperatureSensor (Location);

~TemperatureSensor();

void calibrate(Temperature actualTemperature);

Temperature currentTemperature() const;

private:  ...  };

ClassActiveTemperatureSensor{  public:

ActiveTemperatureSensor (Location,

void (*f)(Location, Temperature));

~ActiveTemperatureSensor();  void calibrate(Temperature actualTemperature);  void establishSetpoint(Temperature setpoint,

Temperature delta);

Temperature currentTemperature() const;

private:  ...  };

Инкапсуляция –бұл объект құрылғысын,тәртібін анықтайтын және объект элементтерін бір-бірінен ажырату(бөлу) процесі.Инкапсуляция абстракцияның шартты міндеттемелерін олардың іске асыруынан ажырату үшін қызмет етеді.

class Array

{

public:

Array() :

len(0),

val(NULL){}

Array(int _len) :

len(_len)

{val = new double[_len]; }

Array(const Array & a);

~Array(){ Free(); }

inlineconst double & Elem(inti) const { returnval[i]; }

inline void ChangeElem(inti, double x) { val[i]= x; }

protected:

voidAlloc(int _len) {

if (len == 0)

Free();

len = _len;

val = new double[len]; }

void Free(){

delete [] val;

len = 0; }

intlen;

double * val;

};

Модулдiк - бұл iшкi қисындыға жiктеген жүйенiң қасиетi, бiрақ модулдар өзара нашар сабақтас.

// gplan.h

#ifndef _GPLAN_H

#define _GPLAN_H 1  #include "gtypes.h"  #include "except.h"  #include "actions.h"  class GrowingPlan ...  class FruitGrowingPlan ...  class GrainGrowingPlan ...

#endif

Иерархия - бұлдеңгейлербойыншаабстракциялардыңреттелеуi, олардың орналастырылуы. typedef unsigned int Yield;

classFruitGrowingPlan : public GrowingPlan {  public:

FruitGrowingPlan(char* name);  virtual ~FruitGrowingPlan();  virtual void establish(Day, Hour, Condition&);  void scheduleHarvest(Day, Hour);  Boolean isHarvested() const;  unsigned daysUntilHarvest() const;  Yield estimatedYield() const;

protected:

Boolean repHarvested;  Yield repYield;

73. Иерархия. Типизациялау. Параллелизм.

Иерархиялық ақпарат әртүрлі болуы мүмкін: бірнеше предприятиялар құрылымы, учреждения документацияларының құрылымы, отчет құрылымы және т.б. . Tree View және Outline компоненттері иерархиялық ақпараттың ағаш түрінде бейнеленуіне қызмет етеді,яғни қолданушы өзіне қажетті түйіндерді таңдай алуы. . Әрбір түйінде ағаш бірнеше мәліметтермен байланыста болуы мүмкін. C++ та көбіне типизация әдісінің public типі қолданылады,мысалы:

class TForm1 : public TForm

{

/*.....*/

};Бұл жағдайда көріну аймағы өзгермейді - защищенные методы защищенными, а публичные публичными. Алайда қол жеткізу спецификаторы болып private та болуы мүмкін. Бұл жағдайда көріну аймағы өзгереді.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]