タグ

演算子に関するtyosuke2011のブックマーク (9)

  • PHP: 論理演算子 - Manual

    <?php // -------------------- // foo() は決してコールされることはありません。これらの演算子は短絡評価を行うからです。 $a = (false && foo()); $b = (true || foo()); $c = (false and foo()); $d = (true or foo()); // -------------------- // "||" の優先順位は "or" より高くなります // $e に代入されるのは、(false || true) の評価結果です // これは、次の式と同様です: ($e = (false || true)) $e = false || true; // $f に false を代入してから "or" 演算子を評価します // これは、次の式と同様です: (($f = false) or true) $

    PHP: 論理演算子 - Manual
  • 演算子 - とほほのWWW入門

    変数 var に値 exp を代入します。イコール(=)は等しいという意味ではなく代入するという意味を持ちます。 xx = 5; // xx に 5 を代入する yy = xx; // yy に xx の値(= 5)を代入する zz = "ABC"; // zz に文字列"ABC"を代入する 例えば、次の例を数学的に解釈すると「解無し」となってしまいますが、JavaScript ではこれを「xx という変数に、xx の値と 2 を足したものを代入する」という意味になります。あらかじめ xx に 5 が代入されていれば、xx は 7 となります。

  • フレンド演算子関数

    グローバルな演算子関数 演算子のオーバーロードにフレンド関数を用いることもできます フレンド関数を用いることで、グローバルな演算子関数を表現できます フレンド関数を用いるに当たり、最も重要な機能は メンバ関数と異なり、明示的にオブジェクトを受け取るという点です フレンド関数に this ポインタが存在しないこと思い出してください メンバ関数によるオーバーロードは、次のような演算ができませんでした 1000 + object; メンバ演算子関数は、必ずオブジェクト型が左辺にくるという約束があったからです しかし、フレンド演算子関数は双方を明示的に受け取るため これに縛られることなく、比較的自由な演算を行うことができます #include<iostream> using namespace std; class Integer { public: int value; friend void

  • キャスト演算子

    動的キャスト C++では、C言語の型キャストをそのまま使うことができますが それ以外に、C++特有の型キャスト演算子が用意されています その中でも、とくに重要なのが dynamic_cast でしょう この演算子は、C++のポリモーフィッククラスに対応しているもので 実行時型変換を行い、有効であれば型を変換します dynamic_cast < type-id > ( expression ) type-id には、変換する目的の型を指定します 必ずポインタ型か参照でなければいけません expression は、目的の型に変換する式を指定します type-idがポインタ型ならポインタ、参照ならば変数を指定します #include<iostream> using namespace std; class Kitty { public: virtual void func() { cout <<

  • 実行時型情報

    オブジェクトの型を知る C++のようなオブジェクト指向言語では、ポリモーフィズムをサポートしています オーバーライドで知ったように、場合のよっては実行されるまで性質がわからないオブジェクトが存在します この柔軟性はプログラムの効率に非常に大きな影響を与えます しかし、実行中に現在のオブジェクトの型を知る必要があるケースもあります といって、コンパイル時にオーバーライドされた仮想関数の型を知ることはできません そこで実行時型情報という機能を用いて、実行中にその型を調べる必要があります 実行時型情報は RTTI(Run-Time Type Identification) とも呼ばれます この機能を用いることで、ポリモーフィッククラスの型の操作などが動的に行えます 実行時型情報を得るには typeid 演算子 を用います この演算子は const type_info & を返します type_i

  • 複雑な演算子

    第14章 複雑な演算子 基的な演算子については第4章で説明しましたが、この章では、もう少し複雑な演算子について説明します。 14-1.ビット演算子 ビット単位でデータ操作をするものです。対象は整数に限られます。 【ビット演算子】 演算子説明

  • ビット演算 - Wikipedia

    ビット演算(ビットえんざん、英: bitwise operation)とは、主にコンピュータで行われる演算のひとつで、データをビット列(つまり0か1が多数並んだもの)と見なして、各ビットの移動やビット単位での論理演算を行うもの[1]。 デジタルコンピュータの内部では、情報をビット列として表しており、CPUやMPUなどにはビット演算用の命令が多種用意されている[1]。特に機械語のプログラムでは多用される演算であり、高水準言語のソースコードでは直接記述されていない場合でも結局機械語に変換されて実行されるので、内部的に多用されている[1]。 ビット演算は大きく分けて次のように二種類ある[1]。 ビット単位の論理演算[1] NOT, AND, OR, XORがある。 ビットの位置を入れ替える操作[1] 大きく分けるとシフト演算(一方向に単純に移動させる操作)とローテート演算(ビット列の先頭と末尾を

  • C言語の演算子について

    整数の割り算では、小数点以下は切り捨てられます。被演算数が負の時の切り捨ての方向は機種に依存します。 +と-は同じ優先順位です。* / %も同じ優先度で、こちらのグループの方が+と-よりも優先順位が高くなります。 <C言語で「余り」を求める演算子%> C言語で「余り」を求める演算子は%です。x % yはxをyで割った余りになります。この余りを求める演算子はfloatやdoubleに対しては使えません。被演算数が負の時の余りの符号は機種依存となります。 浮動小数点数に対して、余りを求めたい場合はfmod標準ライブラリ関数を使用します。文法は以下のとおりで、この関数はx/yの余りを返します。

  • BohYoh.com【C言語講座】演算子一覧表

    【C言語講座】演算子一覧表 C言語講座のページへ 優先順位演算子形式名称結合性 1 ()x(y)関数呼出し演算子左 []x[y]添字演算子左 .x . y.演算子(ドット演算子)左 ->x -> y->演算子(アロー演算子)左 ++x++後置増分演算子左 --y--後置減分演算子左 2 ++++x前置増分演算子右 ----y前置減分演算子右 sizeofsizeof xsizeof演算子右 &&x単項&演算子(アドレス演算子)右 **x単項*演算子(間接演算子)右 ++x単項+演算子右 --x単項-演算子右 ~~x~演算子(補数演算子)右 !!x論理否定演算子右 3 ()(x)yキャスト演算子右 4 *x * y2項*演算子左 /x / y/演算子左 %x % y%演算子左 5 +x + y2項+演算子左 -x - y2項-演算子左 6 <<x << y<<演算子左 >>x >> y>>演

  • 1