c/c++的話,可以自己定義壹個結構體。
按照妳描述的情況,這個結構體或者類,可以定義為如下式樣(推薦定義成類):
class?ElectricNode{
//?這裏僅提供壹些基本供參考的成員定義,我也不知道妳要保存什麽東西 public: ElectricNode(); virtual?~ElectricNode(); private: //?這裏定義壹些這個節點相關的信息(不是太懂,猜想比如有節點的電壓啊、最大允許的電流負荷啊什麽的,都能做成員變量保存在這裏,這些是節點相關的信息。) //?最重要的是壹個網狀的結構體系,因為某壹個節點可能與未知數量的節點連接,而且為了便於修改連接關系,推薦使用c++現有的vector結構做拓展 vector<ElectricNode>?m_nodes_connected;?//?只保存與他相連的節點};
整體的話,可以直接用壹個vector<ElectricNode>存儲所有的電網的點,因為每壹個ElectricNode類都記住了這個點相關的信息以及和他相連接的點,自然就形成了壹個網了。
因為STL的這些標準容器都提供了數組越界檢查、內存自動分配、以及壹系列的存取查找刪改相關的方法,操作起來比較方便,比自己寫數組管理方便很多,也比較安全可靠。再加上類的話,能夠提供壹些方法,比如內壹個節點自己裏面就能做壹些短路風險相關的計算準備工作,或者直接提供準確的數值,對於外部疊加上來的算法,不論是書寫還是計算,都方便很多,就算日後調整、修改算法,也是十分方便的