<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                本章后面的部分講述復數這樣一個例子。復數在數學和工程領域很有用途,許多計算用到了復數。一個復數是實部和虛部之和,記作x+yi,x為實部,y為虛部,i是-1的平方根。 以下為類Complex的定義: ~~~ class Complex { double real, imag; public: Complex () { } Complex (double r, double i) { real = r; imag = i; } }; ~~~ 在類的定義中,實部和虛部是私有的,構造函數是公有的,故加上public標號。 一般使用這樣兩個構造函數:一個沒有參數也不做什么工作的構造函數,另一個有兩個參數來用來初始化變量。 到現在為止,還看不到將變量私有化的明顯優點。讓我們把程序復雜一點,就能看到了。 對于復數,通常會有另外一種表達方式叫做基于極坐標系的極坐標表示。跟用復數域上的點的特定位置表示實部虛部不同,極坐標系中用離開原點的距離(或模)和偏離原點的方向(或角度)來表示。 下圖表示兩個坐標系系統。 在極坐標系中,復數記作reiθ ,其中r是模(半徑),θ是用弧度表示的角度。 幸運的是,很容易從兩個坐標系中進行轉換。 從笛卡爾到極坐標系: r = x2 + y2 θ = arctan(y/x) 從極坐標系到笛卡爾坐標系: x = r cos θ y = r sin θ 那么我們應該使用哪一種表達方式呢?因為有些操作在笛卡爾坐標系中簡單些,如加法;而另一些操作在極坐標系中簡單些,如乘法。所以一個辦法是我們寫一個使用兩種表達方式的類,讓他們根據需要可以自動轉換。 ~~~ class Complex { double real, imag; double mag, theta; bool cartesian, polar; public: Complex () { cartesian = false; polar = false; } Complex (double r, double i) { real = r; imag = i; cartesian = true; polar = false; } }; ~~~ 在這個類中有6個變量,這就意味著這樣會比之前的任何一種占用的空間都要多。不過我們很快就會看到這樣做是很有用的。 其中四個變量可以根據名字判斷他們的意思,分別是一個復數的實部,虛部,角度,半徑。另外兩個變量cartesian和polar則是表示對應坐標系的值是否有效的標志。 舉例來說,啥都不做的這個構造函數將兩個標志量設置為false表明該對象無論哪種表達方式,都還不是有效的復數。 第二個構造函數使用參數來初始化實部和虛部,但不會計算模或角度。并會把極坐標的標志位置為false來警告其他函數不應當訪問模或角度值,直到他們被設置為正確的值。 現在應該清楚為何將變量置為私有了吧。如果一個客戶程序被允許不受限制的訪問,讀取了未初始化的值就很容易導致出錯。在下一部分,我們將添加一些訪問函數來避免這種錯誤。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看