[英]Boost Graph: What happens when calling remove_vertex on vertex with degree > 0
從功能圖的remove_vertex
手冊中remove_vertex
假定在刪除頂點u時沒有到頂點u的邊緣。 確保這一點的一種方法是事先調用clear_vertex()。
如果您在連接到其他頂點的頂點上調用remove_vertex()
會發生什么? 是否會導致不確定的行為?
從手冊中的引用看來,可能會發生一些不良情況。 如果是這樣,為什么以這種方式調用時不拋出異常?
除了某些算法和實用程序外,Boost圖形庫通常不會引發異常,尤其是在訪問或修改圖形結構時。 我猜這個決定是由於性能原因而做出的。
我將此API模型與STL進行比較。 在STL中,違反先決條件會導致未定義的行為,而不是引發異常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.