On Jul 2, 10:42 am, "Jim Langston" <tazmas...@rocketmail.comwrote:
"Subrat" <subrat.sah...@in.bosch.comwrote in message
news:g4**********@news4.fe.internet.bosch.com...
I have used #pragma once in a header file.
During compilation I get a warning : #pragma once is obsolete.
How do I switch off this warning, without making any change to my make
file?
Easiest way, go into the header file, remvoe #pragma once and replace it
with the proper include guards.
#ifndef MYFILE_H
#define MYFILE_H
// header here
#endif
MYFILE_HEADER
is also sometimes used.
Many different conventions are sometimes used (inluding some
which are formally illegal, e.g. _MYFILE_H). The important
point is to avoid the risk of collisions. For this reason, most
libraries will try to munge the name of the library into the
guard (e.g. BOOST_..._INCLUDED); anything really professional
will probably include some sort of random sequence as well. (I
get toto_hh_20080702Jbqi2me5hF1pQrgColbxnIMk for a file toto.hh,
although I'll get something else if I create it again; the last
24 characters are generated from input from /dev/random.
Another possibility might be an MD-5 or SHA-1 digest of the
hostname and the full pathname from the root, or the filename,
programmer name and the current time and date.)
--
James Kanze (GABI Software) email:ja*********@gmail.com
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34