home *** CD-ROM | disk | FTP | other *** search
/ Microsoftware Monthly 19…2 Programming Power Tools / MASO9512.ISO / cpptutor / cpptutor.arj / TEXT / GRAMMAR.4 < prev    next >
Encoding:
Text File  |  1993-07-20  |  2.6 KB  |  92 lines

  1. %F,15,GRAMMAR.MNU%Grammar_Summary_Menu / %F,15,GRAMMAR.3%Previous / %F,15,GRAMMAR.5%Next
  2.  
  3.        %C,1%DECLARATOR GRAMMAR SUMMARY
  4.  
  5. init-declarator-list:
  6.       init-declarator
  7.       init-declarator-list %C,1%,%C,5% init-declarator
  8.  
  9. init-declarator:
  10.       declarator [initializer]
  11.  
  12. declarator:
  13.       declarator-name
  14.       pointer-operator declarator
  15.       declarator ( argument-declaration-clause ) [cv-qualifier-list]
  16.                                     [exception-specification]
  17.       declarator [ [constant-expression] ]
  18.       ( declarator )
  19.  
  20. pointer-operator:
  21.       %C,1%*%C,5% [pointer-cv-qualifier-list]
  22.       %C,1%&%C,5% [cv-qualifier-list]
  23.       qualified-class-specifier %C,1%:: *%C,5% [cv-qualifier-list]
  24.  
  25. pointer-cv-qualifier-list:
  26.       pointer-cv-qualifier [pointer-cv-qualifier-list]
  27.  
  28. pointer-cv-qualifier:
  29.       %C,1%const
  30.       %C,1%volatile
  31.  
  32. cv-qualifier-list:
  33.       cv-qualifier [cv-qualifier-list]
  34.  
  35. cv-qualifier:
  36.       %C,1%const
  37.       %C,1%volatile
  38.  
  39. declarator-name:
  40.       name-expression
  41.       class-name
  42.       ~ class-name
  43.       typedef-name
  44.       qualified-type-specifier
  45.  
  46. type-name:
  47.       type-specifier-list [abstract-declarator]
  48.  
  49. type-specifier-list:
  50.       type-specifier [type-specifier-list]
  51.  
  52. abstract-declarator:
  53.       pointer-operator [abstract-declarator]
  54.       [abstract-declarator] ( argument-declaration-clause )
  55.                                     [cv-qualifier-list]
  56.       [abstract-declarator] [ [constant-expression] ]
  57.       %C,1%(%C,5% abstract-declarator %C,1%)%C,5%
  58.  
  59. argument-declaration-clause:
  60.       [argument-declaration-list] [...]
  61.       [argument-declaration-list] %C,1%,%C,5% ...
  62.  
  63. argument-declaration-list:
  64.       argument-declaration
  65.       argument-declaration-list %C,1%,%C,5% argument-declaration
  66.  
  67. argument-declaration:
  68.       declaration-specifier-list declarator
  69.       declaration-specifier-list declarator %C,1%=%C,5% expression
  70.       declaration-specifier-list [abstract-declarator]
  71.       declaration-specifier-list
  72.                             [abstract-declarator] %C,1%=%C,5% expression
  73.  
  74. function-definition:
  75.       [declaration-specifier-list] declarator [ctor-initializer]
  76.                                                    function-body
  77.  
  78. function-body:
  79.       compound-statement
  80.  
  81. initializer:
  82.       %C,1%=%C,5% assignment-expression
  83.       %C,1%= {%C,5% initializer-clause [%C,1%,%C,5%] %C,1%}%C,5%
  84.       %C,1%(%C,5% expression-list %C,1%)%C,5%
  85.  
  86. initializer-clause:
  87.       expression
  88.       [initializer-clause %C,1%,%C,5% expression]
  89.       { initializer-clause [%C,1%,%C,5%] }
  90.  
  91. %F,15,GRAMMAR.MNU%Grammar_Summary_Menu / %F,15,GRAMMAR.3%Previous / %F,15,GRAMMAR.5%Next
  92.