Traduzindo para C++ a partir do Visual Basic
Visual Basic manipula ponteiros implicitamente. Em C++, seu aplicativo é responsável por executar qualquer aritmética de ponteiro necessária.
Por padrão, o Visual Basic passa parâmetros por referência (como ponteiros). Os parâmetros que devem ser passados apenas pelo valor são especificados pela palavra-chave ByVal. Por exemplo, um parâmetro ByVal Integer no Visual Basic é equivalente a um parâmetro curto em C++, enquanto um parâmetro ByRef Integer no Visual Basic é equivalente a um parâmetro short*.
Um parâmetro que é declarado como sequência de caracteres no Visual Basic é declarado como um ponteiro para um BSTR em C++. Definir um ponteiro de cadeia de caracteres para NULL em C++ é equivalente a definir a cadeia de caracteres para a constante vbNullString no Visual Basic. Passar uma cadeia de caracteres de comprimento zero ("") para uma função projetada para receber NULL não funciona, porque isso passa um ponteiro para uma cadeia de caracteres de comprimento zero em vez de um ponteiro zero.
C++ e Visual Basic diferem ligeiramente em como eles representam propriedades. Em C++, as propriedades são representadas como um conjunto de funções de acessador, uma que define o valor da propriedade e outra que recupera o valor da propriedade. No Visual Basic, as propriedades são representadas como um único item que pode ser usado para recuperar ou definir o valor da propriedade.
Tópicos relacionados