Telosys doc
WebsiteTwitterLinkedInNews
  • Telosys documentation
  • Telosys CLI
    • Installation on Linux
    • Installation on Windows
    • CLI configuration
    • CLI commands
    • Getting started
  • Telosys with VSCode
    • Extension installation
    • VSCode settings
    • Telosys terminal in VSCode
    • Telosys editor configuration
  • Telosys with JetBrains IDE
  • Project configuration
  • Project variables
  • Project databases
  • Models and entities
    • Model structure
    • Entity
    • Attribute / Link
    • Annotations
    • Tags
    • Examples
    • Model creation
    • Model installation
    • Models management
  • Bundles of templates
    • Bundle structure
    • Bundle creation
    • Bundles installation
    • Bundles management
    • Velocity language
    • Velocity directives
    • Velocity object types
    • Telosys directives
    • Telosys variables
    • Telosys objects
    • Code snippets
  • Code generation
    • "gen" command
    • "genb" command
  • Target languages
    • C++
    • C#
    • Golang
    • Java
    • JavaScript
    • Kotlin
    • PHP
    • Python
    • Scala
    • TypeScript
  • Target databases (SQL)
    • Predefined rules
    • Specific rules
    • Type size and precision
  • Telosys with Git
    • GitHub usage
    • Install with Git
    • Publish with Git
  • Support the project
  • How to contribute
  • Sponsors
  • IDE and editors
  • Telosys 3 Eclipse plugin
    • Eclipse plugin installation
    • Eclipse customization
    • Telosys 3 database model
Powered by GitBook
On this page
  • Types conversion
  • Annotations effects
  • Specific types
  • Literal values
  • TRUE, FALSE, NULL
  • Generated literal values
  1. Target languages

C++

PreviousTarget languagesNextC#

Last updated 1 year ago

C++ language is supported since version 3.3.0

To define C++ as the target language in a template file :

#set( $env.language = 'C++' )

The information below shows the behavior of the generator when C++ is the current target language. For a detailed description of type conversion, see the generated documentation :

Types conversion

The table below describes how model neutral types are automatically converted to C++ types with potential impact due to annotations (@UnsignedType, @NotNull, @PrimitiveType, @ObjectType)

Model type
C++ type
with annotation

string

string

byte

char

unsigned char

@UnsignedType

short

short

unsigned short

@UnsignedType

int

int

unsigned int

@UnsignedType

long

long

unsigned long

@UnsignedType

decimal

double

float

float

double

double

boolean

bool

date

std::tm

time

timestamp

binary

Annotations effects

  • @UnsignedType has effect only for char, short, int, long

  • @NotNull has no effect

  • @PrimitiveType no effect

  • @ObjectType no effect

Specific types

  • $attribute.fullType no effect

  • $attribute.simpleType no effect

  • $attribute.wrapperType no effect

So, for C++ you can always use the basic "$attribute.type"

Literal values

TRUE, FALSE, NULL

C++ literal

TRUE

true

FALSE

false

NULL

NULL

Generated literal values

Below some examples of literal values generated for each type :

Model type
C++ type
C++ literal value

string

string

"AAA"

byte

char

unsigned char

1

short

short

unsigned short

1

int

int

unsigned int

100

long

long

unsigned long

1000

decimal

double

10000.77

float

float

1000.5

double

double

1000.66

boolean

bool

true or false

date

std::tm

NULL

time

NULL

timestamp

NULL

binary

NULL

https://www.telosys.org/doc/latest/languages/language-c++.html