• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            隨感而發

            雜七雜八

            統計

            留言簿(13)

            閱讀排行榜

            評論排行榜

            [轉]C++操作符號的優先級


            原文地址:http://www.cppreference.com/wiki/operator_precedence
            哈哈。以后不用到處去看書啦。謝謝那個哥們。
            Operator Description Example Overloadable
            Group 1 (no associativity)
            :: Scope resolution operator Class::age = 2; NO
            Group 2
            () Function call isdigit('1') YES
            () Member initalization c_tor(int x, int y) : _x(x), _y(y*10){}; YES
            [] Array access array[4] = 2; YES
            -> Member access from a pointer ptr->age = 34; YES
            . Member access from an object obj.age = 34; NO
            ++ Post-increment for( int i = 0; i < 10; i++ ) cout << i; YES
            -- Post-decrement for( int i = 10; i > 0; i-- ) cout << i; YES
            const_cast Special cast const_cast<type_to>(type_from); NO
            dynamic_cast Special cast dynamic_cast<type_to>(type_from); NO
            static_cast Special cast static_cast<type_to>(type_from); NO
            reinterpret_cast Special cast reinterpret_cast<type_to>(type_from); NO
            typeid Runtime type information cout « typeid(var).name();
            cout « typeid(type).name();
            NO
            Group 3 (right-to-left associativity)
            ! Logical negation if( !done ) … YES
            not Alternate spelling for !
            ~ Bitwise complement flags = ~flags; YES
            compl Alternate spelling for ~
            ++ Pre-increment for( i = 0; i < 10; ++i ) cout << i; YES
            -- Pre-decrement for( i = 10; i > 0; --i ) cout << i; YES
            - Unary minus int i = -1; YES
            + Unary plus int i = +1; YES
            * Dereference int data = *intPtr; YES
            & Address of int *intPtr = &data; YES
            new Dynamic memory allocation long *pVar = new long;
            MyClass *ptr = new MyClass(args);
            YES
            new [] Dynamic memory allocation of array long *array = new long[n]; YES
            delete Deallocating the memory delete pVar; YES
            delete [] Deallocating the memory of array delete [] array; YES
            (type) Cast to a given type int i = (int) floatNum; YES
            sizeof Return size of an object or type int size = sizeof floatNum;
            int size = sizeof(float);
            NO
            Group 4
            ->* Member pointer selector ptr->*var = 24; YES
            .* Member object selector obj.*var = 24; NO
            Group 5
            * Multiplication int i = 2 * 4; YES
            / Division float f = 10.0 / 3.0; YES
            % Modulus int rem = 4 % 3; YES
            Group 6
            + Addition int i = 2 + 3; YES
            - Subtraction int i = 5 - 1; YES
            Group 7
            << Bitwise shift left int flags = 33 << 1; YES
            >> Bitwise shift right int flags = 33 >> 1; YES
            Group 8
            < Comparison less-than if( i < 42 ) … YES
            <= Comparison less-than-or-equal-to if( i <= 42 ) ... YES
            > Comparison greater-than if( i > 42 ) … YES
            >= Comparison greater-than-or-equal-to if( i >= 42 ) ... YES
            Group 9
            == Comparison equal-to if( i == 42 ) ... YES
            eq Alternate spelling for ==
            != Comparison not-equal-to if( i != 42 ) … YES
            not_eq Alternate spelling for !=
            Group 10
            & Bitwise AND flags = flags & 42; YES
            bitand Alternate spelling for &
            Group 11
            ^ Bitwise exclusive OR (XOR) flags = flags ^ 42; YES
            xor Alternate spelling for ^
            Group 12
            | Bitwise inclusive (normal) OR flags = flags | 42; YES
            bitor Alternate spelling for |
            Group 13
            && Logical AND if( conditionA && conditionB ) … YES
            and Alternate spelling for &&
            Group 14
            || Logical OR if( conditionA || conditionB ) ... YES
            or Alternate spelling for ||
            Group 15 (right-to-left associativity)
            ? : Ternary conditional (if-then-else) int i = (a > b) ? a : b; NO
            Group 16 (right-to-left associativity)
            = Assignment operator int a = b; YES
            += Increment and assign a += 3; YES
            -= Decrement and assign b -= 4; YES
            *= Multiply and assign a *= 5; YES
            /= Divide and assign a /= 2; YES
            %= Modulo and assign a %= 3; YES
            &= Bitwise AND and assign flags &= new_flags; YES
            and_eq Alternate spelling for &=
            ^= Bitwise exclusive or (XOR) and assign flags ^= new_flags; YES
            xor_eq Alternate spelling for ^=
            |= Bitwise normal OR and assign flags |= new_flags; YES
            or_eq Alternate spelling for |=
            <<= Bitwise shift left and assign flags <<= 2; YES
            >>= Bitwise shift right and assign flags >>= 2; YES
            Group 17
            throw throw exception throw EClass(“Message”); NO
            Group 18
            , Sequential evaluation operator for( i = 0, j = 0; i < 10; i++, j++ ) … YES

            哎,效果沒有那里好。看來操作還需要練習。呵呵

            posted on 2009-04-01 13:44 shongbee2 閱讀(1003) 評論(0)  編輯 收藏 引用 所屬分類: c/c++

            99久久精品国产高清一区二区| 久久国产精品-久久精品| 亚洲国产成人久久精品99 | 亚洲午夜久久久久妓女影院| 亚洲人成精品久久久久| 欧美综合天天夜夜久久| 手机看片久久高清国产日韩| 亚洲国产精品久久久天堂| 亚洲天堂久久精品| 亚洲精品乱码久久久久久自慰| 国产午夜福利精品久久| 久久久久久久久久久精品尤物| 精品综合久久久久久97超人| 久久久久久久久久久精品尤物| 97久久精品人人澡人人爽| 伊人久久大香线蕉AV色婷婷色| 精品国产综合区久久久久久| 久久精品毛片免费观看| 99精品久久精品一区二区| 久久久久久亚洲精品不卡| 91久久香蕉国产熟女线看| jizzjizz国产精品久久| 99久久精品免费看国产一区二区三区| 夜夜亚洲天天久久| 国产国产成人精品久久| 久久婷婷激情综合色综合俺也去| 综合久久一区二区三区| 久久久久久国产精品美女| 国产精品99久久不卡| 一本一道久久精品综合| 丁香五月网久久综合| 狠狠色丁香久久综合婷婷| 久久精品亚洲日本波多野结衣 | 18禁黄久久久AAA片| 狠狠色综合久久久久尤物| 久久国产视屏| 精品水蜜桃久久久久久久| 日韩亚洲国产综合久久久| 久久婷婷国产剧情内射白浆 | 中文国产成人精品久久亚洲精品AⅤ无码精品 | 99久久精品国产一区二区蜜芽|