Time of Update: 2018-12-03
前篇:http://blog.csdn.net/pathuang68/archive/2009/04/24/4105608.aspx 注意:關於記憶體對齊(memory alignment),請看關於記憶體對齊問題,後面將會用到。 下面我們進行在普通繼承(即非虛繼承)時,衍生類別的指標轉換到基類指標的情形研究。假定各類之間的關係如:代碼如下:#include <iostream>using namespace std; #pragma vtordisp(off)class
Time of Update: 2018-12-03
內容概要:滿足下面2個條件時,1. 父類無虛函數,子類有虛函數2. 非虛繼承類對象之記憶體布局 前篇:http://blog.csdn.net/pathuang68/archive/2009/04/23/4101977.aspx 如果將Base中的兩個虛函數刪除,情況有會怎麼樣呢?將Base中的兩個虛函數刪除,其他保持不變。Base類和Derived類兩者之間的關係如下: 運行結果如下: Derived對象的memory
Time of Update: 2018-12-03
前篇:http://blog.csdn.net/pathuang68/archive/2009/04/24/4105902.aspx 下面討論虛基類和虛函數同時存在的時候,對對象記憶體布局的影響。假定各個類之間的關係如: Base中聲明了一個虛函數vfBase()和一個整形成員變數;Derived1 override了Base中聲明的虛函數vfBase(),聲明了一個虛函數vfDerived1(),另有一個整形成員變數derived1_member;Derived2
Time of Update: 2018-12-03
前篇:http://blog.csdn.net/pathuang68/archive/2009/04/24/4105810.aspx 繼續探討虛基類對對象記憶體布局的影響。幾個類的繼承關係如,這是虛基類最為常見的用法之一: 代碼如下:#include <iostream>using namespace std; class Base{public: int base_member;}; class Derived1 : public virtual
Time of Update: 2018-12-03
在部落格《Model1、Model2和三層》中,Model2已經將JSP承擔的內容大大減少,主要用於顯示,但是對於我們要達到完全視圖來說,裡面嵌套的Java代碼不是我們想要的,就開發而言,jsp可以交給美工開發,美工最熟悉的莫過於布局和標籤,去除Java代碼後的JSP頁美工更容易操作,為了達到此目的,JSTL和EL就非常必要了。JSTL和EL簡介 EL Expression Language,運算式語言,通過操作存在於PageContext等的資料,實現JSP的編寫更加簡單,
Time of Update: 2018-12-03
教程使用的是Tomcat5.x,進入Tomcat介面可以直接配置DataSource,我的是Tomcat6.x,登入Tomcat後發現沒有Tomcat Administration Web Application項。 原來Tomcat 5.5 以後的核心安裝版不再整合Tomcat Administration Web Application,需要獨立下載安裝。而Tomcat 6.0.13的Administration Web
Time of Update: 2018-12-03
由於收費系統中,碰到幾次事件的調用,對其中參數不是很理解,就總結了一下vb.net中的事件。在vb6.0中事件非常簡單,就拿最常用的單擊按鈕事件來說,vb中的代碼是:Private Sub Command1_Click()MsgBox ("你點擊了button1")End Sub 調用command1的單擊事件也很簡單:Private Sub Command2_Click() Command1_ClickEnd Sub
Time of Update: 2018-12-03
上篇部落格《配置TomCat環境》說了如何搭建jdk和Tomcat環境,這次我們在TomCat下寫一個簡單的Servlet執行個體,例子很簡單:用戶端輸入帳號和密碼,經Servlet處理,在服務端顯示使用者名稱和密碼,用戶端返回“登入成功”。代碼 HTML
Time of Update: 2018-12-03
Java的開發和運行環境不像VS可以自動寫入到環境變數,需要手動設定,Tomcat也需要手動設定。配置這事說簡單也簡單,說不簡單一個小疏忽或錯誤的地方也夠你折騰一會,所以整理了一下配置JDK和Tomcat的過程,記錄下來。配置J2SDK J2SDK、JDK、JRE這幾個概念就不說了,直接說安裝J2SDK以後,如何配置環境。 配置Path 安裝完VS後,所需變數自動會加入到Path中,但是Java不可以,需要手動設定JDK和JRE的路徑,過程就是找到系統變數中的Path,
Time of Update: 2018-12-03
Web現狀Web服務概念具有web服務構成UDDIWSDL天氣預報web服務現狀 記的以前看VB.NET時中間就介紹了WSDL,而今又學到web服務,所以用天氣預報的執行個體學習一下。LET'S GO 在說web服務以前,先說說為什麼會產生web服務,畢竟“存在即合理”,Internet現狀: 每一個web伺服器都是獨立存在的,好像是孤島一般,沒什麼互動。web服務的產生就是為了加強之間的互動。什麼是服務? Web服務(Web
Time of Update: 2018-12-03
收費系統需要這樣一個功能:首先用DataGridView瀏覽所有使用者資訊,然後可以刪除指定行的使用者資訊,最後更新這一變化。介面 1、首先檢測要刪除的使用者是否是當前正在使用的使用者:'查看改使用者是否正在被使用,若正在使用則不能刪除If Trim(DGVuser.CurrentRow.Cells(0).Value) = frmLogin.txtUID.Text ThenMsgBox("該使用者正在使用,不能刪除!", MsgBoxStyle.OkOnly,
Time of Update: 2018-12-03
之前學資料庫,用的一直是SQL Server,前幾天剛裝上Oracle資料庫,習慣了SQL Server易操作和美觀,在見識到oracle強大的跨平台、穩定性等等等優點之前,先給了一個ugly外觀的印象,這倒沒什麼,重要的是和PL/SQL配合各種出問題。問題 Oracle 路徑問題。以前安裝其他軟體也碰到過這個提示,但僅僅是提示,不會像Oracle這樣,路徑不合法拒絕安裝的,所以在Oracle路徑安裝問題上,不能有空格、括弧、漢字。
Time of Update: 2018-12-03
以前我們的Servlet、Filter,都是當我們調用時它被動執行的,那麼有沒有一種機制是主動執行的,可以自動響應?對,就是Listener。Listener Listener如其名,是一種監聽,當程式出現指定變化時,可以執行這些監聽。例如當session變化時,HttpSessionListener可以接收到這些變化,然後做出一些反應,這可以稱為一種回調。
Time of Update: 2018-12-03
這個月打算學習EJB, 看了頭3章,發現有點亂,呵呵。果然EJB不是那麼容易學的,第一個HelloWorld就搞了4個小時,但總算聽到了EJB的聲音了。具體的全過程我就不說了,主要寫下和我一樣是菜鳥的朋友容易犯的錯誤,也歡迎大蝦們指教。 我用的是JBoss+Eclipse。 安裝JBoss沒什麼說得了,記得安裝完後在環境變數裡添加:JBOSS_HOME=c:/jboss-4.0.2(這裡是你安裝JBoss的路徑),將%JBOSS_HOME%/bin加入至PATH中。
Time of Update: 2018-12-03
前幾篇部落格介紹的,都是MVC架構中,Servlet、Listern、*.java的抽象、解耦、複用,那V的JSP如何處理抽象和解耦?包含 JSP雖然不能像M和C使用抽象、繼承,但是它有自己的方式:包含。通過包含,可以講JSP抽象出幾個獨立的部分,然後再組合起來,根據展示的不同,組合的方式也不同,從而達到各個部分之間的解耦和複用。包含又分為靜態包含和動態包含。 靜態包含 靜態包含使用的標籤是:<%@ include file="" %>
Time of Update: 2018-12-03
今天偶然看部落格發現一個簡潔漂亮的網易郵箱介面,你可以點擊一下試試: 開啟後介面也非常簡潔,如下:
Time of Update: 2018-12-03
這篇部落格對應上篇部落格《靜態代理模式》,我們來說一下動態代理,靜態代理之所以擴充和維護比較困難,是因為代碼寫的太死,沒有可替換的餘地;針對代碼寫得死能想到什麼解決辦法?對,就是反射。 使用反射可以很到的解決決定載入哪個代理類的問題,避免了每個代理類都要重複寫的問題,話不多說,來看代碼。動態代理 介面UserManager/*** * 使用者控制介面 * @author Administrator * */public interface UserManager
Time of Update: 2018-12-03
以前學習設計模式時,基本一直接觸的是靜態設計模式,靜態代理模式雖然簡單易用,但是存在諸多問題。代理模式 說一下我對代理模式的理解:因為需要對一些函數進行二次處理,或是某些函數不讓外界知道時,可以使用代理模式,通過訪問第三方,簡介訪問原函數的方式,達到以上目的,來看一下代理模式的類圖: 總的來說,就是通過ProxySubject代理類,對原RealSubject的訪問提供控制。靜態代理 介面UserManager/*** * 使用者控制介面 * @author
Time of Update: 2018-12-03
使用opencv播放視頻,幾乎與顯示映像一樣,只是迴圈地顯示每一幀映像而已。代碼注釋如下:#include "StdAfx.h"#include "cv.h"#include "cxcore.h"#include "highgui.h"#include<opencv.hpp>using namespace std;using namespace cv;int position=0; //捲軸的初始位置CvCapture* g_capture =NULL;
Time of Update: 2018-12-03
Canny邊緣檢測IplImage* cvLoadImage( const char* filename, int flags=CV_LOAD_IMAGE_COLOR );第一個參數為將要載入的映像的檔案名稱第二個參數為指定要讀入的映像的顏色和深度、可以將輸入的圖片轉為3通道(CV_LOAD_IMAGE_COLOR), 單通道(CV_LOAD_IMAGE_GRAYSCALE), 或者保持不變(CV_LOAD_IMAGE_ANYCOLOR)。 void cvCanny( const CvArr*