Flex

Flex is een eenvoudige library voor C++ waarmee je in een handomdraai een data structuur opzet. De standaard data types worden ondersteund en deze kunnen netjes worden geordend in Objecten met sleutels en Array's

Voorbeeld

In het onderstaande is wordt er in programma code een data structuur opgezet.

#include <flex/flex.h>

int main(){
Flex::Var var obj = new Flex::Object;
obj["name"] = "John Doe";
obj["age"] = 36;
Database::add("person", obj);
}

Voor het uitlezen zijn er eenvoudige functies om bij het juiste type te komen.

void Database::add(const char * type, Flex::Var data){
  .....
  char * name = data["name"].toString(); // pointer needs to be released
  Person person = connection->addPerson(name, data["age"].ToInt());

  // Releasing name not needed any more
  delete[] name;

  for(int i=0; i<data["jobs"].Length(); i++){
    Flex::Ref job = data["jobs"][i]; // Using Ref instead of Var otherwise it would clone the whole structuur
    char * jobname = job["name"].ToString();
    .....
  }
  ....

Downloads

De headers staan in de map flex en de static lib in de root. Er wordt bij de code  verwacht dat de headers in de map flex.

Download: Flex1.0.zip