Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
| From | James Kuyper <jameskuyper@verizon.net> |
|---|---|
| Newsgroups | comp.lang.c |
| Subject | Re: a doubt about c |
| Date | 2011-06-15 09:53 -0400 |
| Organization | A noiseless patient Spider |
| Message-ID | <itadhf$bt0$1@dont-email.me> (permalink) |
| References | (3 earlier) <slrniv7knq.s0f.angel+news@pearlgates.net> <95i37sFrhnU3@mid.individual.net> <it0q1d$vn3$1@dont-email.me> <023e5c4a-7ebf-4aca-91c0-858ba496c9c7@p13g2000yqh.googlegroups.com> <b0i9v6dmevkrqkbquq1cn3d740ot8nd124@4ax.com> |
On 06/12/2011 10:12 AM, Roberto Waltman wrote:
> Nick Keighley wrote:
>> C++ still uses the preprocessor. What is the alternative to #include?
>
> The "using stuff-from-other-module" directives as implemented in
> several other languages
Which C++ doesn't have.
>> Or #if?
>
> if (expression that evaluates to zero at compile time)
> {
> non reachable code deleted by the compiler
> }
One of the primary uses of #if in C++ code is to control whether or not
code is actually included that would violate a diagnosable rule if the
condition of the #if were false. In C++, as currently defined, the code
which you label as "unreachable" is not required to be "deleted by the
compiler", except insofar as that deletion is covered by the as-if rule.
That rule doesn't allow the compiler to ignore violations of diagnosable
rules. If the "unreachable" code contains such violations, it must still
generate at least one diagnostic message, and it is still permitted to
refuse to translate such code, and in most cases, typical
implementations of C++ will do so.
Your suggested alternative also creates a scope not present in the
corresponding #if; this will often cause problems as a replacement for a
#if. For instance, if the if-condition is true, any identifiers declared
or defined within the if-block will have their scope restricted to that
block. This is incompatible with many uses of #if, including the example
that Eric Sosman gave.
--
James Kuyper
Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
a doubt about c Ya Shou <zxyzxy12321@gmail.com> - 2011-06-11 06:11 -0700
Re: a doubt about c James Kuyper <jameskuyper@verizon.net> - 2011-06-11 09:36 -0400
Re: a doubt about c Angel <angel+news@spamcop.net> - 2011-06-11 14:37 +0000
Re: a doubt about c Keith Thompson <kst-u@mib.org> - 2011-06-11 11:55 -0700
Re: a doubt about c Angel <angel+news@spamcop.net> - 2011-06-11 20:41 +0000
Re: a doubt about c Ian Collins <ian-news@hotmail.com> - 2011-06-12 08:58 +1200
Re: a doubt about c Shao Miller <sha0.miller@gmail.com> - 2011-06-11 17:09 -0500
Re: a doubt about c Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-06-11 18:25 -0400
Re: a doubt about c Ian Collins <ian-news@hotmail.com> - 2011-06-12 11:43 +1200
Re: a doubt about c Nick Keighley <nick_keighley_nospam@hotmail.com> - 2011-06-12 05:38 -0700
Re: a doubt about c Roberto Waltman <usenet@rwaltman.com> - 2011-06-12 10:12 -0400
Re: a doubt about c Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-06-12 10:59 -0400
Re: a doubt about c Nobody <nobody@nowhere.com> - 2011-06-15 17:07 +0100
Re: a doubt about c Nick Keighley <nick_keighley_nospam@hotmail.com> - 2011-06-12 11:33 -0700
Re: a doubt about c James Kuyper <jameskuyper@verizon.net> - 2011-06-15 09:53 -0400
Re: a doubt about c Dr Nick <3-nospam@temporary-address.org.uk> - 2011-06-16 18:46 +0100
Re: a doubt about c DSF <notavalid@address.here> - 2011-06-11 18:53 -0500
Re: a doubt about c Keith Thompson <kst-u@mib.org> - 2011-06-11 16:18 -0700
Re: a doubt about c Stephen Sprunk <stephen@sprunk.org> - 2011-06-11 21:13 -0500
Re: a doubt about c Ian Collins <ian-news@hotmail.com> - 2011-06-12 14:56 +1200
Re: a doubt about c Keith Thompson <kst-u@mib.org> - 2011-06-11 20:24 -0700
Re: a doubt about c Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-06-12 08:10 -0400
Re: a doubt about c Ian Collins <ian-news@hotmail.com> - 2011-06-12 11:49 +1200
Re: a doubt about c Keith Thompson <kst-u@mib.org> - 2011-06-11 15:36 -0700
Re: a doubt about c Nobody <nobody@nowhere.com> - 2011-06-12 00:23 +0100
Re: a doubt about c Seebs <usenet-nospam@seebs.net> - 2011-06-13 14:39 +0000
Re: a doubt about c Squeamizh <squeamz@hotmail.com> - 2011-06-15 15:44 -0700
Re: a doubt about c Geoff <geoff@invalid.invalid> - 2011-06-15 19:57 -0700
Re: a doubt about c "J. J. Farrell" <jjf@bcs.org.uk> - 2011-06-16 18:39 +0100
Re: a doubt about c Nobody <nobody@nowhere.com> - 2011-06-17 15:39 +0100
Re: a doubt about c Willem <willem@toad.stack.nl> - 2011-06-17 14:49 +0000
Re: a doubt about c Joe Pfeiffer <pfeiffer@cs.nmsu.edu> - 2011-06-17 09:14 -0600
Re: a doubt about c Shao Miller <sha0.miller@gmail.com> - 2011-06-17 12:00 -0500
Re: a doubt about c Shao Miller <sha0.miller@gmail.com> - 2011-06-17 11:08 -0500
Re: [OT] Doubt vs. question. (Re: a doubt about c) Shao Miller <sha0.miller@gmail.com> - 2011-06-17 13:00 -0500
Re: [OT] Doubt vs. question. (Re: a doubt about c) Shao Miller <sha0.miller@gmail.com> - 2011-06-22 19:01 -0500
Re: a doubt about c Joe Pfeiffer <pfeiffer@cs.nmsu.edu> - 2011-06-17 09:14 -0600
Re: a doubt about c Seebs <usenet-nospam@seebs.net> - 2011-06-17 22:16 +0000
Re: a doubt about c "J. J. Farrell" <jjf@bcs.org.uk> - 2011-06-18 02:24 +0100
Re: a doubt about c Joe Pfeiffer <pfeiffer@cs.nmsu.edu> - 2011-06-11 23:09 -0600
[OT] Doubt vs. question. (Re: a doubt about c) Roberto Waltman <usenet@rwaltman.com> - 2011-06-12 10:05 -0400
Re: [OT] Doubt vs. question. (Re: a doubt about c) Keith Thompson <kst-u@mib.org> - 2011-06-12 11:22 -0700
Re: [OT] Doubt vs. question. (Re: a doubt about c) Ben Pfaff <blp@cs.stanford.edu> - 2011-06-12 11:44 -0700
Re: [OT] Doubt vs. question. (Re: a doubt about c) Ralph Spitzner <rasp@spitzner.org> - 2011-06-13 11:31 +0200
Re: [OT] Doubt vs. question. (Re: a doubt about c) James Kuyper <jameskuyper@verizon.net> - 2011-06-15 10:03 -0400
Re: [OT] Doubt vs. question. (Re: a doubt about c) Dr Nick <3-nospam@temporary-address.org.uk> - 2011-06-17 07:52 +0100
Re: [OT] Doubt vs. question. (Re: a doubt about c) Michael Press <rubrum@pacbell.net> - 2011-06-19 00:41 -0700
Re: [OT] Doubt vs. question. (Re: a doubt about c) James Kuyper <jameskuyper@verizon.net> - 2011-06-19 07:04 -0400
Re: [OT] Doubt vs. question. (Re: a doubt about c) Bill Waddington <william.waddington@beezmo.com> - 2011-06-23 11:03 -0700
Re: a doubt about c Shao Miller <sha0.miller@gmail.com> - 2011-06-11 11:23 -0500
Re: a doubt about c pete <pfiland@mindspring.com> - 2011-06-11 13:56 -0400
Re: a doubt about c "dr.oktopus" <blindwilly@freeonline.zzn.com> - 2011-06-11 12:53 -0700
Re: a doubt about c Lew Pitcher <lpitcher@teksavvy.com> - 2011-06-11 16:01 -0400
Re: a doubt about c Keith Thompson <kst-u@mib.org> - 2011-06-11 13:07 -0700
Re: a doubt about c Joe Pfeiffer <pfeiffer@cs.nmsu.edu> - 2011-06-11 14:13 -0600
Re: a doubt about c Nobody <nobody@nowhere.com> - 2011-06-11 23:31 +0100
Re: a doubt about c pete <pfiland@mindspring.com> - 2011-06-11 20:07 -0400
Re: a doubt about c Joe Pfeiffer <pfeiffer@cs.nmsu.edu> - 2011-06-11 23:05 -0600
Re: a doubt about c Shao Miller <sha0.miller@gmail.com> - 2011-06-11 16:42 -0500
Re: a doubt about c "christian.bau" <christian.bau@cbau.wanadoo.co.uk> - 2011-06-11 14:23 -0700
Re: a doubt about c Shao Miller <sha0.miller@gmail.com> - 2011-06-11 17:27 -0500
Re: a doubt about c Keith Thompson <kst-u@mib.org> - 2011-06-11 15:42 -0700
Re: a doubt about c Seebs <usenet-nospam@seebs.net> - 2011-06-13 14:39 +0000
csiph-web