Conversione in C++ da Visual Basic

Visual Basic gestisce i puntatori in modo implicito. In C++, l'applicazione è responsabile dell'esecuzione di qualsiasi aritmetica del puntatore necessaria.

Per impostazione predefinita, Visual Basic passa parametri per riferimento (come puntatori). I parametri che devono essere passati per valore vengono specificati solo dalla parola chiave ByVal. Ad esempio, un parametro ByValInteger in Visual Basic equivale a un parametro short in C++, mentre un parametro ByRefInteger in Visual Basic equivale a un parametro short*.

Un parametro dichiarato As String in Visual Basic viene dichiarato come puntatore a un BSTR in C++. L'impostazione di un puntatore stringa su NULL in C++ equivale a impostare la stringa sulla costante vbNullString in Visual Basic. Il passaggio di una stringa di lunghezza zero ("") a una funzione progettata per ricevere NULL non funziona perché passa un puntatore a una stringa di lunghezza zero anziché un puntatore zero.

C++ e Visual Basic differiscono leggermente nel modo in cui rappresentano le proprietà. In C++, le proprietà sono rappresentate come un set di funzioni di accesso, una che imposta il valore della proprietà e una che recupera il valore della proprietà. In Visual Basic le proprietà vengono rappresentate come un singolo elemento che può essere usato per recuperare o impostare il valore della proprietà.

Conversione in C++