Considérations C++ pour les applications multi-périphériques
Remonter à Considérations pour les applications multi-périphériques
Fichiers d'en-tête C/C++ disponibles
RAD Studio fournit des fichiers d'en-tête C/C++ distincts pour les différentes plates-formes cible. Ces fichiers sont situés dans le chemin de recherche $(BDS)\include standard.
Pour utiliser les fichiers d'en-tête d'un chemin de recherche SDK, voir Ajouter un élément de chemin distant ou Modifier un élément de chemin distant. Vous pouvez gérer vos SDK depuis Outils > Options > Options d'environnement > Gestionnaire de SDK.
Pour Windows
Les fichiers d'en-tête pour Windows 32 bits et Windows 64 bits sont situés dans $(BDS)\include\windows.
Sous-répertoire de $(BDS)\include\windows
|
Description |
|---|---|
\crtl
|
Fichiers d'en-tête C/C++ RTL (.h). Pour plus d'informations, voir Référence de la bibliothèque d'exécution C. |
\fmx
|
La machine FireMonkey a généré les fichiers d'en-tête (.hpp) |
\rtl
|
La machine Delphi RTL a généré les fichiers d'en-tête (.hpp) |
\sdk
|
Fichiers d'en-tête Microsoft Windows SDK (.h) |
\vcl
|
La machine VCL a généré les fichiers d'en-tête (.h et .hpp) |
Pour macOS
Les fichiers d'en-tête pour macOS sont situés sur le PC de développement dans $(BDS)\include\osx.
Sous-répertoire de $(BDS)\include\osx
|
Description |
|---|---|
\fmx
|
La machine FireMonkey a généré les fichiers d'en-tête (.hpp) |
\rtl
|
La machine RTL Delphi a généré les fichiers d'en-tête (.hpp) |
Pour iOS
Les fichiers d'en-tête pour iOS sont situés sur le PC de développement dans $(BDS)\include\ios.
Sous-répertoire de $(BDS)\include\ios
|
Description |
|---|---|
\crtl
|
Fichiers d'en-tête C/C++ RTL (.h). Pour plus d'informations, voir RTL iOS C. |
\fmx
|
La machine FireMonkey a généré les fichiers d'en-tête (.hpp) |
\rtl
|
La machine RTL Delphi a généré les fichiers d'en-tête (.hpp) |
Pour Android
Les fichiers d'en-tête pour Android sont situés sur le PC de développement dans $(BDS)\include\android.
Sous-répertoire de $(BDS)\include\android
|
Description |
|---|---|
\crtl
|
Fichiers d'en-tête C/C++ RTL (.h). Pour plus d'informations, voir RTL C pour Android. |
\fmx
|
La machine FireMonkey a généré les fichiers d'en-tête (.hpp) |
\rtl
|
La machine RTL Delphi a généré les fichiers d'en-tête (.hpp) |
Disponibilité des frameworks sur les différentes plates-formes
| Plate-forme | RTL Delphi (différente de laRTL C/C++) |
FireMonkey | VCL |
|---|---|---|---|
| Windows 32 bits | |||
| Windows 64 bits | |||
| iOS 64 bits | |||
| Android | |||
| Linux |
Utilisation des frameworks
Sur iOS et Android
Les options BCCIOSARM64/BCCAARM et LD associées aux frameworks iOS et Android sont décrites dans le tableau suivant :
| Outil | Option | Description |
|---|---|---|
| Compilateur C++ BCCIOSARM64 et BCCAARM pour le périphérique iOS 64 bits, et Android | -isysroot
|
Spécifie la racine du SDK iOS et du NDK Android. Cet emplacement est généralement défini sur %IOS_SDK_ROOT% ou %ANDROID_NDK_ROOT%.
|
| Compilateur C++ BCCIOSARM64 pour le périphérique iOS 64 bits | -F
|
Spécifie le chemin du framework (généralement %IOS_SDK_ROOT%\System\Library\Frameworks").
|
| LD BCCIOSARM64 pour le périphérique iOS 64 bits | -syslibroot
|
Spécifie l'emplacement du répertoire racine logique. Le répertoire racine logique est un répertoire sur votre PC de développement (Windows) qui représente la racine du SDK iOS. |
| LD pour BCCAARM Android | --sysroot
|
Spécifie l'emplacement du répertoire racine logique. Le répertoire racine logique est un répertoire sur votre PC de développement (Windows) qui représente la racine du SDK Android. |
| LD | -framework
|
Spécifie un framework à lier. Par exemple, -framework Foundation lie votre application au framework Foundation.
|
Dans l'EDI, l'option "Répertoires racine du framework" de la page Projet > Options > Compilateur C++ > Répertoires et conditions vous permet de définir les répertoires à ajouter au chemin d'inclusion du framework.
Littéraux chaîne char16_t et wchar_t sur iOS et Android
Sur macOS et iOS, char16_t n'est pas équivalent à wchar_t (comme c'est le cas sur Windows) :
- Sur Windows,
wchar_tetchar16_tsont des caractères sur deux octets. - Toutefois, sur iOS et Android,
wchar_test un caractère sur 4 octets.
Ainsi, pour déclarer des chaînes constantes UTF-16, utilisez le préfixe L ou u sur Windows, mais utilisez le préfixe u sur iOS et Android.
UnicodeString(L"Text"), UnicodeString(u"Text")
Exemple sur iOS et Android :
UnicodeString(u"Text")
L'utilisation du préfixe L pour les littéraux chaîne sur iOS et Android n'est toutefois pas incorrecte. Dans ce cas, les chaînes constantes UTF-32 sont converties en chaînes UTF-16.
_D pour écrire des chaînes constantes qui sont préfixées en conséquence avec L ou u. Exemple :UnicodeString(_D("Text"))
Pour plus d'informations sur les plates-formes mobiles, voir Résolution des avertissements du lieur à propos des littéraux chaîne.
Rubriques
Voir aussi
- Activation des applications C++ pour Unicode
- Littéraux et types de caractères Unicode (C++11)
- Exigences pour les applications multi-périphériques
- Considérations Delphi pour les applications multi-périphériques
- Compilateurs C++
- BCC64.EXE, le compilateur C++ Windows 64 bits
- BCCIOSARM64.EXE, le compilateur C++ pour le périphérique iOS 64 bits
- BCCAARM.EXE, le compilateur C++ pour Android
- Framework Programming Guide: What are Frameworks? (EN)