2011-12-30 3 views
31

Счастливые ребята.Официальные имена операторов/ключевые слова C++

Я работаю над последовательностью препроцессора C++ (используя boost), чтобы помочь мне в создании операторных функций. Я до сих пор закончил исходный код, однако у меня возникли проблемы с поиском наиболее подходящих ключевых слов, идентифицирующих этих функторов.

Более конкретно после рассмотрения проекта C++ 0x мне не удалось найти наиболее подходящие (уникальные) имена для следующих операторов:

  • -> и. которые оба называют в проекте: операторы-члены класса
  • -> * и *, которые оба называются:. Указатель операторов-членов

Как вы думаете, вы можете помочь мне назвать их лучше?

Ссылки я использовал это для:

  1. C++ 0x проект (может быть найти в Интернете)
  2. "boost/proto/operators.hpp" заголовка который включал большинство более-загружаемых операторов.
  3. Operators in C and C++ из Википедии, которые также предусмотрены следующие имена
    • . Структура ссылки
    • -> Структура разыменовать
    • . -> * и * указатели членов

Вот список, который я до сих пор создано. Любые другие предложения будут высоко оценены.

Symbol  Keyword   Description 
++  , post_increment  , post increment 
--  , post_decrement  , post decrement 
++  , pre_increment  , pre increment 
--  , pre_decrement  , pre decrement 
+  , unary_plus   , additive promotion 
-  , unary_minus   , additive inversion 
!  , negate    , logical negation 
~  , complement   , complement 
*  , indirect   , indirection 
&  , address_of   , address of 
+  , add     , addition 
-  , subtract   , subtraction 
*  , multiplies   , multiplication 
/  , divides    , division 
%  , modulus    , modulo 
==  , equal    , equality 
!=  , inequal    , inequality 
>  , greater    , greater than 
<  , less    , less than 
>=  , greater_equal  , greater or equal than 
<=  , less_equal   , less or equal than 
&&  , logical_and   , logical and 
||  , logical_or   , logical or 
&  , bitwise_and   , bitwise and 
|  , bitwise_or   , bitwise inclusive or 
^  , bitwise_xor   , bitwise exclusive or 
<<  , left_shift   , left shift 
>>  , right_shift   , right shift 
+=  , add_assign   , addition assignment 
-=  , subtract_assign  , subtractions assignment 
*=  , multiplies_assign , multiplication assignment 
/=  , divides_assign  , division assignment 
%=  , modulus_assign  , modulo assignment 
>>=  , right_shift_assign , right shift assignment 
<<=  , left_shift_assign , left shift assignment 
&=  , bitwise_and_assign , bitwise and assignment 
^=  , bitwise_or_assign , bitwise exclusive or assignment 
|=  , bitwise_or_assign , bitwise inclusive or assignment 
->*  , arrow_indirect  , pointer to member 
,  , comma    , comma 
=  , assign    , assignment 
[]  , subscript   , subscription 
->  , arrow    , class member 
.  , dot     , class member 
.*  , dot_indirect  , pointer to member 
+0

Я помню это только (не уверен): '->' называется оператором стрелок (сохранить ваш глаз: D) (доступ члена через указатель) –

+5

@ Mr.Anubis: Раньше я был программистом вроде вас. Затем я взял оператора стрелы в колене ... –

+1

@ChrisParton, что означает «Используется», означает, что вы сейчас? и зачем вам делать эту часть колена? 0_o –

ответ

Смежные вопросы