Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Mike Murov                           2:5030/976.55  02 Oct 2002  16:07:27
 To : Serge Nozhenko
 Subject : <none>
 -------------------------------------------------------------------------------- 
 
 
 Сpд Окт 02 2002 00:42, я пишу:
 
  SN> 01 Oct 02 19:58, Andrey Tarasevich wrote to Serge Nozhenko:
 
  >>>  AT> Итак, _вычислением_ выражения 'a ^= b' в C/C++ называется
  >>>  AT> процесс вычисления значения 'a ^ b'. Hи больше, ни меньше.
  >>>  AT> Величина 'a ^ b' называется _результатом_ выражения 'a ^= b'.
  >>>  AT> Все. Больше ничего в _результат_ выражения 'a ^= b' не
  >>>  AT> входит.
  >>>
  >>> [...дальнейшие рассуждения поскипаны...]
 
 <skip here appear>
   Уважаемые господа!
   К сожалению не имею времени работать с оригинальным C++ стандартом и пользуюсь
 выжимками от Microsoft (MSDN, April 2000). Так вот, по исследуемому вопросу там 
 сказано следующее:
 
 Assignment Operators:  =, +=, -=, *=, /=, %=, >>=, <<=, &=, ^=, |=
 
   An assignment operation assigns the value of the right-hand operand to the
 storage location named by the left-hand operand. Therefore, the left-hand
 operand of an assignment operation must be a modifiable l-value. After the
 assignment, an assignment expression has the value of the left operand but is
 not an l-value. The assignment-operator is one of the following:
 <skipped>
 
   Так вот, насколько я понимаю <start> assign the value <skip> to the storage
 location named <end> довольно явно указывает на принудительную прямую
 модификацию памяти, которая же будет являтся и значением выражения. Причем для
 всей группы операторов присвоение является не каким-то доп.эффектом, а самым что
 ни на есть основным.
 
   А теперь рассуждения
   a^=b == a=(a^b) - если принять данную запись за верную (ессно чисто 
 логически, т.к.напр. для классов '^=' совершенно отдельный переопределяемый 
 оператор)
   a^=b^=a^=b == a=(a^(b=(b^(a=(a^b)))))  (Z)
   т.к. во всем вычислении идет прямое изменение памяти, то _не_ может быть
 изменения порядка раскрытия скобок (по представленному выше из MSDN).
 
 P.S.относительно проблемы считаю, что со скобками a^=(b^=(a^=b)) все должно быть
 в ажуре на любом компиляторе, а вот без скобок...
 
 P.P.S.видно у Билли тоже споры возникали подобные этому, т.к. писать "storage
 location named" вместо variable так просто не станут :)
 
 P.P.P.S.если будете опровергать мою (.) зрения, пожалуйста опровергните для
 начала ее для правой части выражения (Z).
 
 Еще увидимся, Serge.
 
 --- GoldED/W32 3.0.1
  * Origin: Kill. Ем All. (2:5030/976.55)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 <none>   stan72   21 Sep 2002 20:01:31 
 Re: <none>   Sergei Paschenko   23 Sep 2002 17:26:11 
 <none>   Dmitry Pyzhov   24 Sep 2002 01:07:14 
 Re: <none>   Andrey Tarasevich   25 Sep 2002 11:00:54 
 <none>   Dmitry Pyzhov   26 Sep 2002 11:28:38 
 Re: <none>   Andrey Tarasevich   27 Sep 2002 10:56:36 
 <none>   Vitaly Mayatskih   27 Sep 2002 17:40:43 
 <none>   Andrey Tarasevich   28 Sep 2002 01:34:37 
 Re: <none>   Anatoly Svishev   28 Sep 2002 00:33:11 
 Re: <none>   Andrey Tarasevich   28 Sep 2002 02:29:40 
 <none>   Aleksey Loginov   28 Sep 2002 11:09:12 
 Re: <none>   Vladislav Gusev   28 Sep 2002 12:30:15 
 Re: <none>   Pavel P   29 Sep 2002 10:27:02 
 <none>   Vitaly Mayatskih   29 Sep 2002 14:17:20 
 Re: <none>   Andrey Tarasevich   29 Sep 2002 23:29:43 
 Re: <none>   Anatoly Svishev   30 Sep 2002 03:07:53 
 Re: <none>   Andrey Tarasevich   30 Sep 2002 08:36:27 
 <none>   Ianos Gnatiuc   30 Sep 2002 22:54:13 
 <none>   Aleksey Loginov   01 Oct 2002 08:52:46 
 <none>   Ianos Gnatiuc   02 Oct 2002 10:59:01 
 <none>   Aleksey Loginov   03 Oct 2002 06:50:24 
 Re: <none>   Andrey Tarasevich   03 Oct 2002 07:40:22 
 Re: <none>   Vladislav Gusev   01 Oct 2002 16:36:43 
 <none>   Nickolas Hirgij   01 Oct 2002 22:50:02 
 Re: <none>   Pavel P   30 Sep 2002 06:22:38 
 <none>   Max Alekseyev   29 Sep 2002 22:46:08 
 Re: <none>   Andrey Tarasevich   30 Sep 2002 11:48:20 
 <none>   Max Alekseyev   30 Sep 2002 13:06:54 
 <none>   Andrey Tarasevich   01 Oct 2002 06:21:35 
 <none>   Serge Nozhenko   01 Oct 2002 15:08:24 
 Re: <none>   Andrey Tarasevich   01 Oct 2002 19:58:24 
 Re: <none>   Andrey Tarasevich   01 Oct 2002 21:34:18 
 <none>   Serge Nozhenko   02 Oct 2002 00:42:48 
 <none>   Andrey Tarasevich   02 Oct 2002 03:44:12 
 <none>   Mike Murov   02 Oct 2002 16:07:27 
 Re: <none>   Stanislav Yaroshenko   03 Oct 2002 01:33:40 
 <none>   Andrey Tarasevich   03 Oct 2002 03:01:09 
 <none>   Andrey Tarasevich   03 Oct 2002 03:49:50 
 Re: <none>   Vladimir A. Pertzel   30 Sep 2002 15:28:40 
 <none>   Ianos Gnatiuc   30 Sep 2002 23:02:32 
 <none>   Georgy Plechanov   23 Sep 2002 17:05:12 
 <none>   Igor Bychkov   24 Sep 2002 21:54:28 
 <none>   Nickolas Hirgij   24 Sep 2002 08:41:05 
 <none>   Ianos Gnatiuc   30 Sep 2002 00:50:35 
 <none>   Stanislav Shwartsman   30 Sep 2002 09:06:00 
 <none>   Ianos Gnatiuc   30 Sep 2002 22:16:12 
 Re: <none>   Vladislav Gusev   01 Oct 2002 16:12:30 
 <none>   Comoderator Of Ru Algorithms   02 Oct 2002 21:09:00 
 <none>   Ianos Gnatiuc   02 Oct 2002 12:02:13 
 Re: <none>   Vladislav Gusev   03 Oct 2002 19:25:24 
 <none>   Nickolas Hirgij   01 Oct 2002 20:38:42 
 Re: <none>   Vladislav Gusev   30 Sep 2002 13:25:00 
 <none>   Ianos Gnatiuc   30 Sep 2002 22:34:18 
 Re: <none>   Vladislav Gusev   01 Oct 2002 16:36:11 
 <none>   Stanislav Shwartsman   01 Oct 2002 22:35:23 
 Re: <none>   Vladislav Gusev   02 Oct 2002 13:14:46 
 <none>   Stanislav Shwartsman   02 Oct 2002 16:51:45 
 Re: <none>   Vladislav Gusev   03 Oct 2002 18:51:00 
 <none>   Dmitry Pyzhov   01 Oct 2002 01:26:34 
 <none>   Ianos Gnatiuc   01 Oct 2002 08:01:13 
 <none>   Nickolas Hirgij   01 Oct 2002 20:32:05 
 <none>   Kirill Frolov   03 Oct 2002 23:45:50 
 <none>   Igor Dolgov   04 Oct 2002 00:00:18 
Архивное /ru.algorithms/40383d9b1ea6.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional