uml學習之開篇 重點在於組建和零件的關係

2021-07-23 01:15:12 字數 1290 閱讀 9880

**今天寫一些uml方面的內容,其實學習uml主要是想要提高自己在軟體設計方面的思想,以求能夠在程式設計道路上獲得一些實質性進展。

#include 

#include

#include

using

namespace

std;

class catalog

double getcost ()

private:

double m_cost;

};class component

};class part : public component

double cost()

private:

catalog m_cata;

};class assembly : public component

double cost ()

return ret;

}private:

vector

m_comps;

};int main(void)

這段**設計了乙個類component(構件)作為基類,類part(零件)和類assembly (元件)作為子類,在assembly 中有乙個私有資料vector

class assembly : public component

double cost ()

return ret;

}private:

vector

m_comps;

};

上面的**試圖將component的引用push_back進m_comps,結果發現執行後列印的值是0.0,跟了一下**發現a1新增的兩個元素呼叫的cost函式都是父類裡面的。感覺用引用來實現多型把引用push_back進vector後,再呼叫並沒有產生多型的效果。

對於為什麼引用不能產生多型的效果,做了如下簡單的測試:

class base

};class derived : public base

void print()

}private:

vector

m_b;

};int main(void)

寫了乙個base類和derived類驗證,發現在a3呼叫print函式遍歷m_b中每個元素呼叫(*bter).print();時,並沒有表現出多型的性質。我想原因可能是定義的vector m_b, 並沒有真正的push_back進去引用,而只是將b1,b2當作兩個父類物件壓進去的。

機器學習之開篇

機器學習,本質來講,就是基於大數量的資料,尋找一種規律。然後根據找尋出的規律將未知目標值的資料確認目標值的過程。期間涉及到了資料,演算法。近幾年由於計算機硬體的公升級,大規模計算成為可能,所以機器學習又開始興起。資料是學習的 起初你拿到的是一堆陌生的資料,老闆可能給你一項任務,目標是在這一堆資料中確...

DPDK學習之開篇介紹

1 前言 記得剛開始工作的時,老大將我安排到資料麵組,當時第一次聽說 資料面 這個概念,感覺挺新鮮的。誤打誤撞就開始搞了,剛開始接觸的時候,由於不懂其中的原理,覺得很神奇,因為報文的 是在應用層,通過乙個程序進行 而傳統的報文 是基於核心的,要想控制報文,需要寫驅動程式。後面接觸了一段時間,發現原來...

Python學習 重點模組之json

注意 json不能轉換類,不能轉換函式 json.dumps 實現檔案寫入,字串轉換 寫入檔案當然是json字串樓 實際上,json.dumps 只是幫我們做了乙個字串的轉換,把字典轉換為了json格式的字串而已 dict 字典 dict1 json,json.loads dict name 錯誤 ...