天天看點

《C++多線程程式設計實戰》——1.4 結構化程式設計方法include "stdafx.h"include

本節書摘來自異步社群出版社《c++多線程程式設計實戰》一書中的第1章,第1.4節,作者: 【黑山共和國】milos ljumovic(米洛斯 留莫維奇),更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。

前面提到過,有4種程式設計範式。用c++編寫程式時,可以使用結構化程式設計範式和面向對象程式設計範式。雖然c++是面向對象語言,但是也能用結構化程式設計方法來編寫程式。通常,一個程式中有一個或多個函數,因為每個程式必須有一個主例程(<code>main</code>)。對大型程式而言,如果把所有代碼都放進<code>main</code>函數中,會導緻代碼的可讀性非常差。較好的做法是把程式中的代碼分成多個處理單元,即函數。接下來,我們用一個計算兩個複數之和的程式來說明。

準備就緒

确定安裝并運作了visual studio。

操作步驟

執行下面的步驟。

1.建立一個新的預設c++控制台應用程式,命名為complextest。

2.打開complextest.cpp檔案,并輸入下面的代碼:

using namespace std;

struct scomplex

{

   double dreal;

   double dimg;

};

scomplex complexadd(scomplex c1, scomplex c2)

   scomplex c;

   c.dreal = c1.dreal + c2.dreal;

   c.dimg = c1.dimg + c2.dimg;

   return c;

}

double rand(double dmin, double dmax)

   double dval = (double)rand() / rand_max;

   return dmin + dval * (dmax - dmin);

int _tmain(int argc, tchar* argv[])

   scomplex c1;

   c1.dreal = rand(-10, 10);

   c1.dimg = rand(-10, 10);

   scomplex c2;

   c2.dreal = rand(-10, 10);

   c2.dimg = rand(-10, 10);

   scomplex c = complexadd(c1, c2);

   cout &lt;&lt; c.dreal &lt;&lt; "+" &lt;&lt; c.dimg &lt;&lt; "i" &lt;&lt; endl;

   return 0;

}<code>`</code>

更多讨論

這次,我們建立了一個新類型(在該例中是結構)<code>scomplex</code>來表示複數,提高了代碼的可讀性,而且比之前的例子更有意義。是以,可以在代碼中通過建立對象來執行抽象的任務,這樣做提高了程式本身的邏輯性和可讀性,以這種方式程式設計更容易。

繼續閱讀