外掛程式思想及實現

2021-06-16 07:03:09 字數 585 閱讀 1254

外掛程式的定義就是通過實現統一的介面,讓主框架可以按照統一的方式來實現對各個不同外掛程式的呼叫,這樣主框架就可以不必關注各外掛程式的細節,簡化了系統整合的難度,增加了系統的可擴充套件性和靈活性;

在vc中實現介面的方式,大致有兩種,一種是標準的com介面,鑑於com介面傳遞引數效率不高;這裡未採用;第二種,就是通過定義虛函式來實現介面定義;這裡採用第二種方法;

下面介紹外掛程式介面定義所包含的內容:

首先:外掛程式要提供外掛程式描述介面:包括外掛程式名稱、型別等資訊,id等,便於識別;

其次:外掛程式要提供資源管理介面,包括建立檢視視窗,建立浮動視窗,控制視窗大小、顯示、布局;

第三:外掛程式要提供資訊互動介面:包括介面呼叫invoke ,資訊傳遞senddata,事件通知,eventfire,拖動物件,drogobj等;

為了系統整合更加合理,系統主框架應提供統一操作介面給各外掛程式,使外掛程式具有操作主框架的能力;下面描述主框架介面的基本內容:

第一:視窗顯示切換;

第二:狀態顯示;

第三:資料庫連線管理;

第四:拖動事件**;

第五:invoike事件**等

等等各類公共操作或者需要主框架來進行**或者協作的功能;

希爾排序思想及實現

希爾排序以插入排序為基礎,不同的或者說改進的地方是,插入排序或者其它排序解決不了資料太大的陣列,那樣會非常費時,而如果讓插入排序在乙個乙個向前插入之前使其部分有序,即讓它先以h的間隔有序,最後再執行一次插入排序會不會更快呢?答案是會的。1 主要思想 以上面說的為例,讓陣列以h為間隔進行插入排序,h ...

幾類排序的思想及實現

1.插入排序 1 直接插入排序 直接插入排序,把第乙個數看做是有序的,然後將後面的數不斷插入到前面有序的數列 void insert sort int a,int len 及時終止的氣泡排序 void bubble sort int a,int len 2 快速排序 void quick sort ...

快速排序思想及Java實現

首先從後往前找,找到乙個比基準值小的數之後,停下來,與基準值交換 然後又從前往後找,找到乙個比基準值大的值,停下來,接著與基準值交換 直到,所有的數遍歷完畢,及左右陣列座標相等,則將基準值填入之前定義的座標中 即 陣列被分為左右兩個區間,接下來用遞迴對左右區間進行排序 public class ne...