Les points suivans documentent certaines précisions relatives au C++.
Templates
RTTI
Type de NULL
En-têtes précompilées
wxWidgets n'utilse pas les templates (excepté pour quelques fonctionnalités avancées qui sont désactivées par défaut) depuis qu'il s'agit de façon notoire d'une fonctionnalité non portable.
wxWidgets n'utilise pas le RTTI (run-time type information) C++ depuis que wxWidgets fournis son propre RTTI, implémenté à partir de macros.
Certains compilateurs (par exemple, le compilateur natif IRIX cc) définissent NULL comme valant 0L ainsi, aucune conversion en pointeur n'est autorisée. A cause de cela, toutes ces occurences de NULL dans le port GTK+ utilisent une conversion explicite comme
wxWindow *my_window = (wxWindow*) NULL;
Il est recommandé d'adhérer à cela dans tout code utilisant wxWidgets comme
cela rend le code (un peu plus) portable.
Certains compilateurs, tels que Borland C++ et Microsoft C++, supportents les en-têtes précompilées. Cela peut économiser beucoup de temps de compilation. L'approche recommendée est de précompiler "wx.h", en utilisant cette en-tête précompilée pour compiler à la fois wxWidgets et n'importe quelle application wxWidgets. Pour les compilateurs Windows, deux fichiers sources squeletes sont fournis (un pour les applications normales, et un pour créer des DLLs) afin de permettre la création initiale des en-têtes précompilées.
Toutefois, il y a plusieurs inconvénients à utiliser les en-têtes précompilées. La première est que pour bénéficier de plus de facilité, vous avez souvant besoin d'inclure plus de fichiers en-tête que cela normalement être. Cela signifie que le fait de modifier un fichier en-tête va provoquer plus de recompilation (dans le cas de wxWidgets, tout devra être recompilé puisque tous les fichiers incluent "wx.h"!)
Un autre problème est que pour les compilateurs qui n'ont pâs les en-têtes précompilées, inclure un grand nombre de fichiers en-têtes ralenti la compilation considérablement. Pour cette raison, vous allez trouver (dans les parties communes X et Windows de la bibliothèque), une compilation conditionnelle qui sous Unix, inclue un ensemble minimal d'en-têtes; et qui lors de l'utilisation de Visual C++, inclue wx.h. Section non traduite:This should help provide the optimal compilation for each compiler, although it is biased towards the precompiled headers facility available in Microsoft C++.