Time of Update: 2018-12-04
以下為此章知識點羅列,沒有整理和引申。 1. COM介面在C++中是用純屬抽象基類實現的,一個COM組件可以提供多個介面,一個C++類可以使用多繼承來實現一個可以提供多個介面的組件。 2.
Time of Update: 2018-12-04
所有COM的介面都需要繼承一個介面——IUnknown,介面的定義在UNKNWN.H檔案中,我所使用的7.0庫版本中所帶的定義為: IUnknown { public: BEGIN_INTERFACE virtual HRESULT STDMETHODCALLTYPE QueryInterface( /* [in] */ REFIID riid,
Time of Update: 2018-12-04
第一次寫部落格,呵呵,先練習練習。 用matlab 的imrotate 函數對二值映像做旋轉時,不能實現功能,自己寫了個旋轉程式。旋轉的基本原理如下:對原圖中的點A(X0,Y0),旋轉到(X1,Y1), 旋轉角度為alpha,則 X1=X0*cos(alpha) +Y0*sin(alpha); Y1=-X0*sin(alpha) +Y0*cos(alpha);操作思路:(1)在寬、高分別為Src_h,Src_w原圖中找一點A(col,row), col ,row 為像素所在的列數和行數。(2)
Time of Update: 2018-12-04
hough 變換檢測直線的基本原理是 對X-Y 座標系下的每一點(x,y),對應極座標下為:rho =x*cos(theta) +y* sin(theta) (1) ,因此,對x-y平面內的每一點,對應到極座標系則為一條直線,如果直角座標系下的點共線,則在極座標的直線會相交於一點。因此,求得極座標下相交最多的點,(rho, theta) ,代入(1),則可求出最多的點所在直線的方程。將theta 劃分為 1到 179 格,每格為1, 由(1),rho
Time of Update: 2018-12-04
看其他的教程寫的都太複雜了。來個簡單的。利用VM ware本身內建的工具vmware-vdiskmanager.exe(位於VM安裝目錄下)關閉虛擬機器,開啟命令列視窗,輸入命令 vmware-vdiskmanager.exe -x 50Gb c:\....\buildVM-cl1.vmdk,之後開啟虛擬機器,我的電腦右鍵->Manage->Disk Management,會發現有一塊未使用的空間,把這部分空間新建立分區便可各參數含義:-x 50Gb
Time of Update: 2018-12-04
行車規則系統介紹 一、概述 行車規則,即行車規範,對車輛、司機的一種行車規範。行車規則分規則與後續處理兩個模組,規則即規範,後續處理即違反規範後的提示、處理、操作。規則包括非工作時間用車警示,地區警示,地區超速警示,路線警示,超速警示,關鍵點提示,離站逾時警示,離站停車逾時警示,混凝土車輛非法出料警示。後續處理有拍照(網路攝影機號可選),資訊下發等。例如,設定一條規則“超速警示:速度上限100”,後續處理“拍照:一號網路攝影機”,那麼當車輛行駛速度超過100km/h時,後台會分析出
Time of Update: 2018-12-04
SoapToolkit3.0發布 C++要訪問WebService不像C#那麼簡單便捷,可以通過微軟提供的一套基於COM的SOAP開發組件來訪問,這個SDK叫作SoapToolkit3.0(下載連結:
Time of Update: 2018-12-04
一、變數替換${varname:-word} 如果變數varname存在且非null,則返回其值,否則,返回word${varname-word} 如果變數varname存在,則返回其值,否則,返回word $ var=$ echo ${var:-"hello"}hello$ echo ${var-"hello"}$ unset var$ echo ${var-"hello"}hello$${varname:+word}
Time of Update: 2018-12-04
0.前言最近不斷遇到類似的幾何位置問題,一直沒有花時間去總結,本文總結了我常用點跟多邊形的位置判斷方法以及代碼。希望能夠對大家有所協助。文中所指的多邊形均為凸多邊形,一些描述可能有誤,歡迎指正。1.測試的多邊形在開始之前,我們需要先構建好測試環境。我構建了一個比較特殊的多邊形,如下。/ \|
Time of Update: 2018-12-04
這裡主要閑談專案經理,技術總監等技術團隊的頭的一些通病,個人總結了幾點,純屬個人意見,歡迎指正。 一、能用就行 “能用就行”是指項目開發過程中,為了趕進度,有些頭會有這種想法。不管項目的擴充性,後續維護難度,軟體是否穩定,容錯性,這些通通不管,先把東西弄出來為上,。特別是市場出生的,或兼市場的頭,這種思想尤為嚴重。如果這種思想在團隊中漫延,這種團隊弄出來的產品鐵定是流毒無窮的,花一個月開發的項目,花二年去維護,問題總是斷不了的,這個團隊永遠也別想成為一流團隊,最終
Time of Update: 2018-12-04
今天在VS2008中使用預設選項建立DLL工程,把《COM技術內幕》書上第7章的例子搬過來編譯,在串連的時候遇到一個問題:mfcs90ud.lib(dllmodul.obj) : error LNK2005:_DllMain@12 already defined in CMPNT.obj 原來按VS2008預設建立的DLL工程帶有像class CTDllApp : public CWinApp這樣的類定義,我刪除此類,加入_DllMain函數做DLL的進入點函數。
Time of Update: 2018-12-04
確定一個檔案是否存在(file-exists-p "~/test.el")看看它的協助文檔:file-exists-p is a built-in function in `C source code'.(file-exists-p FILENAME)Return t if file FILENAME exists (whether or not you can read it.)See also `file-readable-p' and `file-attributes'.This
Time of Update: 2018-12-04
【 聲明:著作權,歡迎轉載,請勿用於商業用途。 聯絡信箱:feixiaoxing @163.com】 前面的部落格我們介紹了單向鏈表。那麼我們今天介紹的雙向鏈表,顧名思義,就是資料本身具備了左邊和右邊的雙向指標。雙向鏈表相比較單向鏈表,主要有下面幾個特點: (1)在資料結構中具有雙向指標 (2)插入資料的時候需要考慮前後的方向的操作 (3)同樣,刪除資料的是有也需要考慮前後方向的操作 那麼,一個非迴圈的雙向鏈表操作應該是怎麼樣的呢?我們可以自己嘗試一下: (
Time of Update: 2018-12-04
/*函數的輸入:(1)當前點的座標p(2)地區頂點數組pt[];(3)頂點數nCount 輸出: 在地區內返回TRUE,否則返回FALSE。 Point類型是一個結構: struct Point { 類型 x;//此處類型根據採用的經緯度類型決定。 類型 y; };*/BOOL PtInPolygon(Point p, Point pt[], int nCount){ int nCross = 0; for (int i = 0; i < nCount; i++)
Time of Update: 2018-12-04
作為一個其中考試性質的課程設計,的確有一定難度,縮了前面學習到的各個儲存空間的使用,棧的使用,函數設計以及調用技巧,轉移函數使用(在這個課題設計中犯了兩次jmp和jczx+loop使用的錯誤,印象深刻),經過今天6個小時的努力,終於順利實現。這裡實現dtoc功能的時候沒有按上一個測試那樣使用0結尾,為的是方便整行輸出資料,這裡不影響整體實現。不多說,上代碼,上的圖有一張是之前錯誤顯示的,是因為對jmp和loop的使用錯誤而致。 assume cs:code data
Time of Update: 2018-12-04
Google地圖錨點矯正 技術交流QQ:1148824289問題概述 google地圖在中國使用,都存在位移問題,車輛明明在公路上的,點一打到地圖上,可能跑到人家房頂上了,或者跑到河裡去了,關於這種問題,聽說是我們國家出於安全考慮要求他們這樣做的吧,這個我就不多說了。下面說說怎麼解決這個問題。 解決原理 網上有些解決這種問題的演算法呀,或者其他解決方案,似乎都不澈底,本人介紹這種方法,精確度高,但是得配合具體資料,資料量非常大,有一個多G,通過匹配矯正。下面說說原理
Time of Update: 2018-12-04
在技術上,QQ 遊戲到底是如何?百萬人同時線上並保持遊戲高效率的呢? 事實上,針對於任何單一的網路伺服器程式,其可承受的同時串連數目是有理論峰值的,通過C++中對TSocket的定義類型:word,我們可以判定這個串連理論峰值是65535,也就是說,你的單個伺服器程式,最多可以承受6萬多的使用者同時串連。但是,在實際應用中,能達到一萬人的同時串連並能保證正常的資料交換已經是很不容易了,通常這個值都在2000到5000之間,據說QQ的單台伺服器同時串連數目也就是在這個值這間。 如果要實現200
Time of Update: 2018-12-04
在指令碼的開始部分設定一個調試變數。指令碼運行時測試該變數,然後根據該變數的值決定是顯示還禁止調試指令。如下所示:#!/bin/shdebug=1test $debug -gt 0 && echo "Debug is on"echo -n "Can you write device drivers?"read answertest $debug -gt 0 && echo "The answer is $answer"answer=`echo $answer |
Time of Update: 2018-12-04
錯誤檢查代碼是一個非常簡單的函數,該函數使用Shell內部變數“$?”。成功執行的指令將把Shell變數$?賦值為0.alter函數代碼很簡單,調用該函數是將$?作為其第一個參數,將描述所報告內容的字串作為第二個參數。#!/bin/shalert () {#usage: alter<$?> <object> if [ $1 -ne 0 ] then echo "Warning: $2 did not complete successfully." >&2
Time of Update: 2018-12-04
社會需求是推動人進步的動力,這不,由於工件需要,我需要學習COM的知識以完成手頭的工作內容。軟體行業是一個不斷學習不斷進步的行業,學習方法至關重要。 第一章是一個基本的介紹,基本上圍繞為什麼用COM,COM是什麼而不是什麼這幾個中心來展開的,目的就是說明:作者寫這書是有道理的!對於我來說,不需要看這部分內容,我的學習原因用不著作者去指引,很快在實踐中就能出真知,哈哈。 把小結列出來: