D 識別子名は、アルファベットの大文字と小文字 、数字、および下線で構成されます。先頭文字は必ずアルファベットまたは下線になります。先頭文字が下線 (_) の識別子名はすべて、D システムライブラリ用に予約されています。これらの名前を D プログラム内で使用してはなりません。D プログラムでは、通常、変数名はアルファベットの大文字と小文字、定数名はすべて大文字で記述されます。
D 言語のキーワードは、プログラミング言語構文そのもので使用するために予約されている特別な識別子です。これらの名前は常にアルファベットの小文字のみで指定され、D 変数名に使用することは禁じられています。
表 2–1 D のキーワード
auto* |
goto* |
sizeof |
break* |
if* |
static* |
case* |
import*+ |
string+ |
char |
inline |
stringof+ |
const |
int |
struct |
continue* |
long |
switch* |
counter*+ |
offsetof+ |
this+ |
default* |
probe*+ |
translator+ |
do* |
provider*+ |
typedef |
double |
register* |
union |
else* |
restrict* |
unsigned |
enum |
return* |
void |
extern |
self+ |
volatile |
float |
short |
while* |
for* |
signed |
xlate+ |
D では、ANSI-C キーワードの上位集合がキーワードとして予約されています。将来 D 言語で使用するために予約されているキーワードには、アスタリスク (*) が付けられています。将来のために予約されているキーワードを使用しようとすると、D コンパイラから構文エラーが返されます。D では定義されているが ANSI-C では定義されていないキーワードには、プラス記号 (+) が付けられています。D では、ANSI-C のすべての型および演算子を使用できます。D プログラミングの主要な特徴は、制御フロー構文を使用しない点です。ANSI-C で制御フローに関連付けられたキーワードは、D では将来のために予約されています。