[[ header START ]]

Welcome to OS2.GURU site! (eComStation.RU)

Select your language: Russian English Deutch Spanish Italian Portuguese Czech Polish French

Frequently asked questions and answers:
telegram

Форум обсуждение

telegram

Send message

telegram

[ +7-981-8529467 (Санкт-Петербург)

telegram

t.me/os2_guru

eComStation.RU


ru · en · de · es · it · pt · cz · pl · fr
OS/2 is a greatly different operating system for PC (ArcaOS, eComStation, IBM OS/2 Warp)
Applications, news, reviews, support of users, hardware, questions and answers.
 
[What is OS/2?  News  Install  Update  
 
 
Usage  Future  Community  Projects  

How to buy
russian OS/2 apps?

The concept of
OS/2 development

 
Update

 
Applications

 
Advantages:

 
For developer:

 
(Пайпы программ)

 
Companies:

 
History:

 
(Бонусы)

 
Advice:

 
(Барьеры и решения)

 
Technologies:

 
(Применение в науке, лаборатории, ..)

 

 
Solutions

 
New eComStation:

 
Future:

 
(Ссылки на другие сайты)

 
(Картинка дня)

 
OS/2 artefacts:

 
Gadgets:

Upgrade ArcaOS to NeoWPS level

  • Install original PNG icons drawed by designer, specialized at OS/2 adornation.
  • Install eSchemes 2018 to change colors and buttons on desktop.

Object-Oriented Programming in eComStation, Part 1: Introduction


TITLE: Object-Oriented Programming in eComStation, Part 1: Introduction

DATE: 2006-05-05 03:49:17

AUTHOR: Yuri Prokushev

Please use online translator
go to http://translate.google.com
and request the translation of http://ru.ecomstation./showarticle.php?id=144
to your language

........

...... .... ...... ........ ............ .. ..... ........-................ ................ . ....... eComStation . ....... ......... ...... SOM. ...... .......... .... ...... ............. . ............ ......... ...... . ......... ......... ......., ............ .. ...... .......

. ....... ..... ..... ...... ... ........... ......... ...........:

  • Developer's Toolkit (. ....... eComStation)
  • Open Watcom (. ....... eComStation)
  • Free Pascal

.............., ... ........ ...... . ........-............... ................. . ........ ..... C/C++/Delphi, . ..... ....... ........ ............. ....... eComStation.

... ..... SOM?

SOM (System Object Model, ......... ......... ......) - ... ......... ......, ........... .. ........... ..... ................, ............... ... ........ . ........ ........ ......... ........ SOM ............ ..... .... .. ........ .......... .......... . ....... ............ .......... ........-............... ................ (...) ......... .............. ......... . ........ ........ .......... ...... ........... ............. ............ ... .............. ................ ......... ......., ............... .......... .............. ..., ........, ......, ......... . ....... VAC, .. ..... ........ ............. Watcom ... GCC. . . ...... ...... ...... ... ..... ...... ..... ........ ...... .... ... ............. ...... . .... .. ..........., .. ...... .......

SOM ....... ... ............ ....., ......... SOM, .............. .......... ....... . ........ .. ...... ......... ..... ..... ...., SOM ............ ....... .. ...... ... ............. eComStation. ......... ......... SOM ........... . .. ............. ........... . ..... .......... . ..... ...... .................

. SOM ......... ...... ...... ........... . ....... ..... IDL (Interface Definition Language, .... ........... ..........), ....... ..... .... ............ . .......... ........... ..... ................. ..., ........, ... ............. ..... C ... ......... ......, .... IDL ..... ............ . ..... ...... .C . .H, ....... . .......... ............ ... ...... ... ......... .......... SOM ... ...... SOM. . ....... .. ........., ........... C++ ... Delphi, ...... SOM ..... .... ..... ........ . ..... ...... ......

SOM ............ . ......... ..........., . ........., ......... ........ ..... WPS (Workplace Shell) ......... ........ .. .... SOM. ..... ...., SOM ........ ..... VX-REXX . VisPro REXX. ...... ......... ...... ............. ...... SOM - ... OpenDoc. ..........., ..... .........., ............ .. WPS, ........ ........... SOM. ........ ..... .......... ........... ....... . ...... ......... ............ ........ ..... Object Desktop . xWorkplace . .......... ...... ............, ... Audio-Data CD Creator . CW Multimedia Classes.

...... SOM ..... ............ . .... DLL- ... EXE-....... ............. DLL .... ....... ........ ...... . ....... DLL WPS ........ ............... .... ............ ............. .. EXE . ... ....... . ... ....... .... ... .......... .. ........, ............ . ...... .... C++.

.............. ..........

DSOM (Distributed System Object Model, .............. ......... ......... ......) ......... ........ SOM ........ . ......... .......... ... ........ ..... ......... ... .. ..... ......, ... . .. ..........., ............. . ..... ............, ..... ...... ...... ....... ......... .......... WPS ........... ..... ......., ... ... ........ ....... .... .. WPS ... ....... . .............. ........ DSOM, .. ....... WPS-.......... ........... .. ..........., ..... ...., ... . .... ...... ......... .. ........... .......... .... .......... ....., . .. ... .......... WPS ........

DSOM ............. ............ CORBA (Common Object Request Broker Architecture), ....... .......... ........ .............. ..... ........... ........... . ............ .....

............ CORBA .... ........... ............ Object Management Group, ............ ..... 300 ........ - ........... ............ ........... . ............, . ..... ............ .. .......... . .......... ...... ... ........ ............ ....., ... .......... ... ............ ........

............ CORBA ........ ...... ..... ........ ......... ... .............. ........., ........... OMA (Object Management Architecture, ........... .......... .........). CORBA .......... ........... .......... .......... ....... (Object Request Broker - ORB), ....... ......... ............... ..... ......... . ........... ............ ..... ORB ..... ........ ....... ..... .........., ........... .. ..... ......, ... ..... ........ . ..... DSOM ............ ..... .......... CORBA ORB.

Developers Toolkit ............ . ........... ............. ......, ....... ........ "Replication Framework", ......... ....... ............ . .......... ......... ............, .... . ........ ..... ......... . ..... ............. ....... ..... ........ .. .... ...... ........ ... .... . ...... ...... ...... .. ............. ...... .......... - "Persistence Framework" - ............ ... ........, ........... .. ...... "Event Management Framework" ..... .... ............ ... ............ ........, .......... .. ........, ........ ....... ......... Presentation Manager. ....... ....., ... ....... ............ SOM .. .......... . .......... ........ .. ........ . ....... ......... ......... ..... .........

........ ..........

........ . SOM ..... ......... ..... ........ . ...... ........ ............ ........, .. ...... ..... ..... ....... COM (Component Object Model, ............ ......... ......), .......... ........ ........... CORBA. ...... .......... .......... ...... ........ .......... ............ ...... ...... Windows ........ Microsoft. ......., ......, ... ............... COM .......... ..... .... ..... .......... . ....-.. ..... .....-...... .......... .. .......

...... . COM ....... ........ .......... XPCOM (Cross Platform COM), ............... . ...... ....... Mozilla. . ....... .. COM, XPCOM ............... ... ........... ...... ......... ......... ............. .............. .......... ....... ........ ........, ... ....... ............... .......... Mozilla.

.. ....... ..... ........ ......... .......... CORBA. .. ...... ..... .... ORBit2 - .......... CORBA ... ....... GNOME2. ...... (...., ..... ...., . ......) .... .......... MICO. ......., ........... .. ..... .. ..... ......, .... ......... ....... ...... ..... ... ........... .......... .......... ............... .. ......... ..... ................: C, C++, Delphi, Java . ...

SOM ...... C++/Delphi

......, ..... .. ............ ............. . .......... ......... SOM . Toolkit, ....... .......... ...-...... SOM.

....... ....... .........., ... .......... ... ... ...... ...? SOM .......... ...... ..... ............... .. ...... .........., . .. ..... ... C++ . Delphi ...... ... ..... ............. .. ...... ........... . ...... SOM ... ........, ... ...... ......., ....... ..... ....... ..., ........, ...... ....... ....... ........... ... ...... ........ .. ..... ...........

...... .......... .. ..... .. ......... ....:

  1. .......... .. ........ (.. .........)
  2. .......... .. .....
  3. .......... . ....... dispatch-.......

........... ...... .......... .. ........ ........ ........... .......... .... .. ........ .......... ........... ........ C++ . Delphi. ..... .......... .. ..... ......... ........ ..... ......, ... ....... .......... .. ... ..., .... ......... .. ......... ........ ...... . .............. ..... - ..... .......... . ....... dispatch-........ ...... ..... ......... ........ ...... . ........... .. ............. ............ ........... . ....... .. C++, SOM .. ......... ........... (...... ...... .......... ......., ...... .......... ...., "...............". .... . .. .. .. ..... ......) ...... .

..........

... ............. .. C++ ... Delphi ...... ......... ........ ......... ......... . .......... . C++ . Delphi ..... ....... ........ ........ ...... ...... . ...... ...... ........ ........... (static) ....... ....... . ...... SOM ........ ..... . .......... ........., ...... ........ ............ ..........., . ....... ........ ............ ........ ......... ........ ... ....... . ......, ........... . ....... ...... ....., ......... ..... ........ ...... . ......, ....... . C++ . Delphi .... ... ........ ......... ............, . ....... ........., ........, .............

....... ...... 1

....... ....... ...... "Hello World" ......... IBM . ....... .....-...... ...... . ....... ...... . HELLO.IDL.

#ifndef hello_h
#define hello_h

#include <somcls.idl>

interface M_Hello;
interface Hello : SOMObject
.
    string hello_();
    attribute string hellomsg;

   void sayHello();

#ifdef __SOMIDL__
implementation
.
    releaseorder: hello_, _get_hellomsg, _set_hellomsg,sayHello;
    callstyle=oidl;
    filestem = hello;
    metaclass = M_Hello;
    somInit: override;
.;
#endif /* __SOMIDL__ */
.;

interface M_Hello : SOMClass
.
    attribute string ClassData;

    Hello HelloCreate(in string msg);
    // ...... ..... ....... .......... ...... Hello
    // . .......... ........ "msg" ... ... ...............
#ifdef __SOMIDL__
implementation
.
   releaseorder: HelloCreate,_get_ClassData,_set_ClassData;
   callstyle=oidl;
   filestem = hello;
   functionprefix=M_;
   somInitMIClass: override;
   somInit: override; // ...... .... ... ........ ........ ............. ......
.;
#endif /* __SOMIDL__ */
.;

#endif /* hello_h */

. ..... Hello ... ........ ..... void sayHello(). . ......... M_Hello ... ........ ....... string ClassData. ........... ........ ............. ........ . ........ ....... _get_ . _set_, ............... ... ......... . .......... ... ........ ............... ... .. IBM ..... .... ...... . ........ \som\samples\somk\cpp\derived SOMObjects toolkit, .... ....... SOM .... ............ ... ... ...... sayHello() ....... ..... ...... ..... ............, ... ..... .......... ...... . ...... ....... .......... ... ....... .. C++.

SOM_Scope void  SOMLINK sayHello(Hello *somSelf)
.
    //... ... ....... ............. ......... ............ SOM
    HelloData *somThis = HelloGetData(somSelf);
    HelloMethodDebug("Hello","sayHello");

    // ........ ......... ......
    M_Hello *helloCls=(M_Hello *)somSelf->somGetClass();

    somPrintf("%s .......... ...... %s\n",somSelf->_get_hellomsg(),helloCls->_get_ClassData());

.

... .. ........, ..... ...... . ...... . ......... .............. . ....... ....... _get_ . _set_ ...... ...... ............. ..... ......... ....., ...... ...... ........ . ....... ......... .. ......... .......... M_Hello.

.........: M_Hello ........ ........... ... ...... Hello.

. ...... ....... ........ ....... .. ..... ........

int main(int argc, char *argv[])
.
   Hello *a,*b,*c;

   // ....... ......... .......... M_Hello (........ ...... helloClsObj)

   M_Hello *helloClsObj=HelloNewClass(Hello_MajorVersion,Hello_MinorVersion);

   //......... ...... ......
   helloClsObj->_set_ClassData("Class 1");

   //....... ..... ...... M_Hello HelloCreate ... ........ ..........
   //...... Hello (....... a, b, c)

   a=helloClsObj->HelloCreate("...... .. ....... A");
   b=helloClsObj->HelloCreate("...... .. ....... B");
   c=helloClsObj->HelloCreate("...... .. ....... C");

   //....... ..... sayHello ... ....... .......
   a->sayHello();
   b->sayHello();
   c->sayHello();

   // ........... .......
   a->somFree();
   b->somFree();
   c->somFree();

   return 0;
.

..... .......... . ....... ......... .. ....... .........:

...... .. ....... A .......... ...... Class 1
...... .. ....... B .......... ...... Class 1
...... .. ....... C .......... ...... Class 1

..... . ......... ... OpenWatcom . .... .......

....... ...... 2

....... ...... ........ ......... ... .... ....... ...... ....., ... ........ ...... ...... .......... ....... ... .......... ... .... ......... ....., ... .............. . ....... ..... ........... .......... IDL. .......... ...... ........ ...:

#include <somcls.idl>
// ......... ........... ....... .......

interface Demo : SOMObject
// ........... ...... Demo, ....... ........ ........ SOMObject
.
  attribute string DemoWord;
  // .....-...... ..... ........ ......
  void sayDemoWord();
  // .....-...... ..... ........ .....
.;

... .., ........, ........, ..... ... ....... ............ ............., ............ ..... ...... ....... .......... ............. ......... ...... ....... ..... ........ ............ .........., .... ......... . ......... ........... ...... (........). ....... ..... ......... ..... .. ..... ........ .......

..... ...., ... .. ....... ......... ...... ...... ......, .... .. ...... ........ ... ........... .......... ... ...... ...... ............. ..... C. ... ..... ........ .. .......... ............... ....... ... ..... ........ ... ........:

sc -sh;ih;c;def demo.idl

. .......... .. ........ .....:

'''....''''''........'''
demo.c...... ..... .......... ......
demo.ih.... ......... .......... ......
demo.h.... ......... ... .......
demo.def...... ... ........ .......... ......

........ ... ...... ........., ....... ..... ......... ... .......... ...... Demo, ............. ........ ........ DemoWord . ........ ..... sayDemoWord. ....... .. .. .... ......: C . C++. ... ...... ..... ....... ......., C++:

// ........ ........... .......... ...... Demo ... C++
#include "demo.xh"

int main(int argc, char *argv[])
.
   // ........ ...... .. .........
   Environment *ev = somGetGlobalEnvironment();
   // ....... .......... ...... Demo (....... demo1 . demo2)
   Demo *demo1 = new Demo;
   Demo *demo2 = new Demo;

   //............. ........ ........ DemoWord
   demo1->_set_DemoWord(ev, "123");
   demo2->_set_DemoWord(ev, "321");

   // ........ ...... sayDemoWord
   demo1->sayDemoWord(ev);
   demo2->sayDemoWord(ev);

   // ........... .......
   delete demo1;
   delete demo2;

   // ...........
   return 0;
.

...... ......: "... ..... .... demo.xh?". ....., ......., ......... ............. . ....... sc:

sc -sxh demo.idl

. .......... .. ........ .... demo.xh. ..... ....... ........, ... .. ......... Developer's Toolkit .. ........ ...... xh. .. ....... ............. . ....... .......

somxh

.. ......... . .......... ........, ..... ... .......:

  1. ... ...... ..... .............. ........ ev
  2. ............ ........... ....... C++ ... ........ . ........ ........

........ ev (.......... ... .......... ............ callstyle=oidl) ........ .. ...... ......... . ............, ........, ... ........... . ........, ..... ........... callstyle=oidl ... ......... .......... ..... ......, ..... ...... ..... ........ . .......... ... .......... ............. . CORBA . ........ ....... ............. . ..... ....... ........ SOM.

....... ...... ... ......... ..... .. ... ... ..... C:

#include "demo.h"

int main(int argc, char *argv[])
.
   // ........ ...... .. .........
   Environment *ev = somGetGlobalEnvironment();

   // ....... .......... ...... Demo (....... demo1 . demo2)
   Demo *demo1 = DemoNew();
   Demo *demo2 = DemoNew();

   //............. ........ ........ DemoWord
   Demo__set_DemoWord(demo1, ev, "123");
   Demo__set_DemoWord(demo2, ev, "321");

   // ........ ...... sayDemoWord
   Demo_sayDemoWord(demo1, ev);
   Demo_sayDemoWord(demo2, ev);

   // ........... .......
   _somFree(demo1);
   _somFree(demo2);

   // ...........
   return 0;
.

... ....., ... ............. ...... SOM .. ......... ....... . ..... ......... ........ ... ........

...... .. ..... .... ... ... ........ ...... ....... ......... ...... ... ...... .... .. ...... ... ............ ........... ..... .. ..... C, .. ....... ............... ..... .... demo.c . ....... ........... ...:

/*
 *  This file was generated by the SOM Compiler and Emitter Framework.
 *  Generated using template emitter:
 *      SOM Emitter emitctm: 2.23.1.9
 */

#ifndef SOM_Module_demo_Source
#define SOM_Module_demo_Source
#endif
#define Demo_Class_Source

#include "demo.ih"


/*
 * .....-...... ..... ........ .....
 */

SOM_Scope void  SOMLINK sayDemoWord(Demo *somSelf,  Environment *ev)
.
    DemoData *somThis = DemoGetData(somSelf);
    DemoMethodDebug("Demo","sayDemoWord");

    somPrintf("...... %s\n",_get_DemoWord(somSelf, ev));
.

... ....., . ..... ...... ......... ..... ......: ........ ........ ........ . ....... ... .. ...... ... .. ....... . ........ ....... ......, ... ... ...... ...... ...... somSelf ........ ......... ........ ....... somThis ............ ... ....... . ...... (.........) ....... .......... .......

...... ............ . ........ .......... . ........ ......... ........... ... ..... ........ Makefile:

CPPC       = wpp386
CC         = wcc386
INC        = -I. -I$(SOMBASE)\include

SC         = $(SOMBASE)\bin\sc
SCFLAGS    =

LINKER     = wlink
LDFLAGS    =
LIBLIST    = $(SOMBASE)\lib\somtk.lib

all: $(SOMBASE)\include\somxh.bld test.exe testc.exe

test.exe: test.obj demo.obj
  $(LINKER) $(LDFLAGS) file demo.obj file test.obj library $(LIBLIST) name test.exe
  test.exe

testc.exe: testc.obj demo.obj
  $(LINKER) $(LDFLAGS) file demo.obj file testc.obj library $(LIBLIST) name testc.exe
  testc.exe

clean: .symbolic
  -del *.err *.obj *.exe *.map *.xh *.ih *.h $(CLEANFILES) >nul 2>&1

$(SOMBASE)\include\somxh.bld:
        @echo ...... ...... ....... ...... .......... C++
        @echo ......... . ....... ....... somxh.
        @exit 1

testc.obj: test.c demo.h
  $(CC) $(INCLUDEPATH) $(CCFLAGS) $[ -fo=testc.obj
test.obj: test.cpp demo.xh
  $(CPPC) $(INCLUDEPATH) $(CPPCFLAGS) $[
demo.obj: demo.c demo.ih
  $(CC) $(INCLUDEPATH) $(CCFLAGS) $[
demo.ih: demo.idl demo.h
  $(SC) -sih $(SCFLAGS) $[
demo.h: demo.idl
  $(SC) -sh $(SCFLAGS) $[
demo.xh: demo.idl
  $(SC) -sxh $(SCFLAGS) $[

..... .... ... ...... ......... ........ ....... wmake, .. ....... ... .....: test.exe . testc.exe. ...... - .......... .. C++, ...... - .. C. ........ . ....... ............. .........:

...... 123
...... 321

......., ... .. ..... .......... .. ....... ......... .............., ............ ...., ... .. ...... ....... ............ ........ . ...... .......... ....... ....... ............ .. ...... ......, ... .......... ....... ....... ... ..... ........... ...... ............

".. . ... ..?" - ...... .. ........ - ". ... .. .......... .......?". ....... ........ ..... ........... ... ..... ...... ...... ... ........... . Makefile:

CPPC       = wpp386
CC         = wcc386
INC        = -I. -I$(SOMBASE)\include

SC         = $(SOMBASE)\bin\sc
SCFLAGS    =

LINKER     = wlink
LDFLAGS    =
LIBLIST    = $(SOMBASE)\lib\somtk.lib

all: $(SOMBASE)\include\somxh.bld test.exe testc.exe testdll.exe

test.exe: test.obj demo.obj
  $(LINKER) $(LDFLAGS) file demo.obj file test.obj library $(LIBLIST) name test.exe
  test.exe

testc.exe: testc.obj demo.obj
  $(LINKER) $(LDFLAGS) file demo.obj file testc.obj library $(LIBLIST) name testc.exe
  testc.exe

testdll.exe: testdll.obj demo.lib demo.dll
  $(LINKER) $(LDFLAGS) file testdll.obj library $(LIBLIST) library demo.lib name testdll.exe
  testdll.exe

demo.dll: demodll.obj demoinit.obj demo.def
  $(LINKER) format os2 lx dll initinstance $(LDFLAGS) file demodll.obj file demoinit.obj 
    library $(LIBLIST) name demo.dll export DemoCClassData, DemoClassData, DemoNewClass, SOMInitModule

demo.lib: demo.def
  implib $@ $[

clean: .symbolic
  -del *.dll *.def *.lib *.err *.obj *.exe *.map *.xh *.ih *.h $(CLEANFILES) >nul 2>&1

$(SOMBASE)\include\somxh.bld:
        @echo ...... ...... ....... ...... .......... C++
        @echo ......... . ....... ....... somxh.
        @exit 1

testc.obj: test.c demo.h
  $(CC) $(INCLUDEPATH) $(CCFLAGS) $[ -fo=testc.obj
testdll.obj: testdll.c demo.h
  $(CC) $(INCLUDEPATH) $(CCFLAGS) $[
test.obj: test.cpp demo.xh
  $(CPPC) $(INCLUDEPATH) $(CPPCFLAGS) $[
demo.obj: demo.c demo.ih
  $(CC) $(INCLUDEPATH) $(CCFLAGS) $[
demodll.obj: demo.c demo.ih
  $(CC) $(INCLUDEPATH) $(CCFLAGS) -bd $[ -fo=demodll.obj
demoinit.obj: demoinit.c demo.ih
  $(CC) $(INCLUDEPATH) $(CCFLAGS) -bd $[
demo.ih: demo.idl demo.h
  $(SC) -u -sih $(SCFLAGS) $[
demo.h: demo.idl
  $(SC) -sh $(SCFLAGS) $[
demo.xh: demo.idl
  $(SC) -sxh $(SCFLAGS) $[
demo.def: demo.idl
  $(SC) -sdef $(SCFLAGS) $[

. .......... .. ........ .......... demo.dll . ...... ......., . . testdll.exe ..... ...... ............. ...... ...........

......., ... ... ........ .......... .......... .............. ..... 3 (!) ......., ..... .......... ...... .. ..... ....... . ...... ............. . DSOM ... ObjectREXX ... ........... ........ ... .... ......., ....... ..... .............. ..... (..... .., ......... .. .. .... .......). ..... ...., ... .......... DSOM . ObjectREXX ... ........... ...... ...... . ...... . ........... ........... (......... - . ......... ........). ...... ...... . ...... . ........... ........... ..... . ....... ..... -u ........... SOM . ........ IR.

........ ...... ..... ....... . ........ ........ .............. .. ObjectREXX:

/* ...... - ...... ... .... ...... . ....... */

parse version . rxlevel .

if rxlevel<='4.00' then do
  say '... .......... ....... ....... ......... ObjectREXX'
  exit
end

/* ....... ....... */
a=.Demo~new
b=.Demo~new

/* ............. ........ */
a~_set_DemoWord('123')
b~_set_DemoWord('321')

/* ........ */
a~sayDemoWord
b~sayDemoWord

/* ....... .......... .. ...., REXX ... .. ...... */

/* .............. ...... SOM */
::Class Demo      Public EXTERNAL 'SOM Demo'

..... . ......... ... OpenWatcom . .... .......

. ......... .......

.. ....... ............ . ........ ............ . ........ SOM. ..... .. ......... ....... .......... ..... ....... . ...... INI . ........ ... . .... .......... ........


.............. ..........:


Test the program:

How to mount encrypted disk? NDCrypt - plugin for NetDrive.

Comments:

Martin B&#246;hme
2006-05-10 01:03:51

Hi,

I'm interessted ist this articale. Is there a translation to german/english?

Regards,

Martin B&#246;hme

AVB
2006-05-10 12:58:37

To: Martin

"Exploring IBM&#8217;s SOM," Part 1, Garbrielle Gagnon, PC Magazine, October 10, 1995

Yuri Prokushev
2006-05-11 10:03:47

To: Martin

Most probably, will not be translated. But I published something like this in EDM/2

To: AVB

;) Only first paragraph.

Yuri Prokushev
2006-05-11 10:11:31

[url]

....... ....
2012-10-23 16:13:39

. ..... ...... ............. .. Delphi, . Delphi .... ....... ........... .... TClass, . . .......... .... TClass ..... ........ ......, ....., ... ClassName. . ...... "class of ...&#8211;......" ..... ...... ........ .... .... ........... ..........., .. . ....... ......... ...... ...... ..., ... ........... ..... class function ... class procedure, . ........ SOM .. ....... ....... ..........

........ .... TClass . Delphi .. ........ .......... .......... .. .... .. ...., class function . class procedure ... ... .......... .. ........ ..... ......&#8211;........ . ...... .......&#8211;........ ..... .... ...... ......, .. ...... ... . ....... .. ..... .... ... ..... ....... ... ...... .... ......... . ....... . ..... ......, . ...... ......, .. ...., ...........

. Java ...... ........ (..., .. ....... ...., ............) ......... .... java.lang.Class, .. ... ...... ....... . .... ........ ... ... .., ... . . ....... . . SOM &#8212; .....

Comment this article.


Your Name:

Your E-Mail:

CODE:
......

  

Your Comment:


eComStation 2.0 is designed to work on modern computers (i3/i5/i7, Core Duo, AMD X2), but works on hardware purchased 5 years ago. eCS 2.0 what's new

Articles

Operating System
Software
Hardware
For developer
Misc
From editor





Last active poll: What is the height of RPM barrier?

[Google]

IBM OS/2 Warp

 
For dummies

Report: OS/2 compatible hardware

 
Reviews


     
  Why eComStation?
Features
Advantages
Usage
Clips and screenshots
   eComStation for
for businessmen
for students and engineers
for reselles of computers
community of users
   Developer
Distribute the program
Description of API, libraries
Start new project
Competition
   Applications
On-line catalogue
Select from eCo Market
   Support service
Contact the web-master
Buy eComStation
Frequently asked questions
for Beginners
 
 
© 2001 - 2021 eCo Software, All rights reserved
Сибирский Медведь технологическая компания
eComStation Serenity Systems International • OS/2 Warp IBM Corporation • ArcaOS Arca Noae