C++ Point對象

2023-03-20 15:56 更新

作為一個復合結構的簡單例子,可以考慮數(shù)學中點的概念。在一個層面上,點是我們以之作為一個對象的兩個數(shù)字,即坐標。在數(shù)學符號中,點用括號中以逗號分隔的坐標表示。例如,(0,0)表示原點,(x,y)表示該點從原點起向右x個單位,向上y個單位。

在C++中,點可以很自然地以兩個double表示。那么,問題是如何把這兩個值組合成一個復合對象或結構呢?答案是結構體定義:

struct Point { 
   double x, y;
};

結構體定義出現(xiàn)在任何函數(shù)定義的外面,通常是在程序的開頭(include語句之后)。

該定義表明,這個結構中體中有兩個元素,分別命名為x和y。這些元素稱為實例變量,原因我稍后將作出解釋。

忘掉結構體定義末尾的分號是一種常見錯誤。在大括號之后放置一個分號可能很奇怪,但你會習慣的。

定義了新的結構體之后,就可以使用該類型創(chuàng)建變量了:

Point blank; 
blank.x = 3.0; 
blank.y = 4.0;

第一行是常見的變量聲明:blank是Point類型。接下來的兩行初始化結構體的實例變量。 這里使用的點記號與對象上調用函數(shù)的語法類似,如fruit.length()中的用法。當然,不同的是,函數(shù)名后面總是跟著一個參數(shù)列表,即使列表為空。

賦值的結果可以用下面的狀態(tài)圖表示: enter image description here

照例,變量名blank在框外,而變量的值在框內。這里,這個值是一個復合對象,它由兩個有名字的實例變量構成。

以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號