XBase++

From Seo Wiki - Search Engine Optimization and Programming Languages
Jump to navigationJump to search

Xbase++ is an object oriented programming language which has multiple inheritance and polymorphism. It is based on the XBase language dialect and conventions. It is 100% Clipper compatible language supporting multiple inheritance, polymorphism, object oriented programming. It supports the xBase data types, including Codeblocks. With it is possible to generate applications for Windows NT, 95, 98, Me, 2000,XP, VISTA and Windows 7.

Clipper Support

XBase++ supports the old commands @SAY/GET to define data entry forms as well as a graphic editor to create data entry forms similar to Visual Foxpro. It also has a visual development environment, support for OEM files (DOS format) and ANSI (Windows), an integrated debugger and a resource compiler to add icons and graphics to the application. It can generate EXE or DLL files.

RDD

Xbase++ supports the Replaceable Database Drivers (RDD, which provide access to multiple database formats) of Clipper through the DatabaseEngines (DBEs). The basic package includes support for DBF, FOX, NTX, CDX, SDF and DEL(delimited). It also supports CORBA 2.0, Visual FoxPro 3.0 to 5.0 database formats, and access to SQL servers.

Birth

XBase++ was born after the decision of Computer Associates to abandon Clipper to develop Visual Objects. The failure of Visual Objects as Clipper substitute empowered the creation of third party libraries and the creation of Clipper syntax compilers.

Source Code samples

<source lang="visualfoxpro">

  1. include "class.ch"

// // This program prints: // // Missy Meow! // Mr. Bojangles Meow! // Lassie Bark! // Press any key to continue... //

///////////////////////////// // PROCEDURE Main() // /////////////////////////////

 LOCAL aAnimals := Array(3)
 LOCAL i
 aAnimals[1] :=  Cat():New("Missy")
 aAnimals[2] :=  Cat():New("Mr. Bojangles")
 aAnimals[3] :=  Dog():New("Lassie")
 FOR i:=1 TO LEN(aAnimals)
    ? aAnimals[i]:Name + "  " + aAnimals[i]:Talk()
 NEXT i
 WAIT

RETURN

///////////////////////////// // CLASS Animal // /////////////////////////////

  EXPORTED:
     VAR Name   READONLY
     METHOD Init
     DEFERRED CLASS METHOD Talk

ENDCLASS

METHOD Animal:Init( cName )

  ::Name := cName

RETURN Self

///////////////////////////// // CLASS Dog FROM Animal // /////////////////////////////

  EXPORTED:
  METHOD Talk

ENDCLASS

METHOD Dog:Talk() RETURN "Bark!"

///////////////////////////// // CLASS Cat FROM Animal // /////////////////////////////

  EXPORTED:
  METHOD Talk

ENDCLASS

METHOD Cat:Talk() RETURN "Meow!" </source>

External links


de:Xbase++ es:XBase++ gl:XBase++ ru:Xbase++

If you like SEOmastering Site, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...