статични методи

Можете да декларира някои методи на клас са статични методи. За да направите това, трябва да използвате статични ключова дума. Статичен метод отнема не параметри това. Използването на статични методи са известни ограничения.







Статичните методи могат да имат пряк достъп само до статичните членове на класа.

Статична метод не може да бъде обявен за виртуален метод.

Не можете да определите, която не е статичен метод със същото име и същ набор от параметри като статичен метод на класа.

Статичните методи имат и друга интересна особеност - дори можете да ги наричаме без да се създава клас от обекти. За да се обадите на статичен метод от програмата, трябва да зададете пълното си име, включително и името на класа.

По-долу е даден клас кръг, при статичния метод дефинирани GetPi. Той се използва, за да получите стойността на статичен елемент FPI клас.

статично невалидни GetPi ()

статичен поплавък FPI;

поплавък кръг :: FPI = 3,1415;

Можете да се обадите метод GetPi, както следва:

Моля, имайте предвид, че се създава обект Circle клас.

Общи членове на класа на обекта

Понякога е удобно за всички обекти от този клас имат обща елементи от данни, които се споделят. Това дава възможност за значително намаляване на броя на глобалните променливи, подобряване на структурата на програмата.







Общи елементи на класа трябва да бъдат декларирани с данните за статични ключови думи. Всички общи елементи на класа трябва да бъдат определени в програмата, запазено за тях в паметта:

Всеки обект клас ще има Cwindow уникални координати, елементи от данни, определени xLeftTop, xRightBottom, yLeftTop, yRightBottom и също с глава съхранява елементът заглавие данни.

общи информационни елементи са в обхвата на класа. методи на клас може да се отнасят до общи елементи в същия начин, както останалата част от класовете на данни:

нищожен SetTitle (Чар * sSource)

За да получите достъп до общите елементи на програмата, трябва да ги декларира като обществено достояние. За достъп до такава променлива, преди името му е необходимо да се уточни името на класа и на оператора.

Приятелски функции и приятелски класове

Достъп до елементите на програмите за клас и другите класове е ограничен. Можете да кандидатствате директно само към елементите на класа е определено или описан в обществото ключова дума. Въпреки това, в някои случаи, е необходимо да се определи функцията извън класа или друг клас от методи, които могат да кандидатстват директно до всички членове на класа, включително членовете обявени за частна и защита.

приятелски функции

Приятелски функция не е част от този клас, но може да се прилага по отношение на всички негови елементи, включително и в частния, така и защита. В една и съща функция може да бъде лесен за два или повече класа.

Следващият пример дефинира функция Clear, приятелски настроени към klassapoint. Clearispolzuetsya приятел функция за промяна на елементите на стойност dannyhm_xim_y обявен за частна:

// Функция Clear е обявен клас приятелски точка

приятел невалидни точка :: Clear (точка *);