Genellikle başlık dosyalarının başlangıcında böyle bir kod görüyorum:
#ifndef HEADERFILE_H
#define HEADERFILE_H
Ve dosyanın sonunda
#endif
Bunun amacı ne?
#pragma
: derleyiciye özgü bir özelliği etkinleştirir. Her ne kadar #pragma once
olduğu çok yaygın olarak desteklenen, bu standart dışı bu.
info cpp
veya buraya bakın ) "tüm ön işlemciler tarafından tanınmıyor, bu nedenle taşınabilir bir programda ona güvenemezsiniz" diyor. Ve GNU cpp, ortak ve taşınabilir #ifndef
deyimi optimize eder, böylece aynı derecede verimlidir #pragma once
.
#ifndef HEADERFILE_H
başlığın adı ile başlayan uygulamanın ad alanını ihlal edebilir E
; ile başlayan tanımlayıcılar E
ve bir rakam veya büyük harf ayrılır <errno.h>
. Ben öneririm #ifndef H_HEADERFILE
.