Time of Update: 2018-07-26
#include <iostream>#include <string>using namespace std;void convertUnCharToStr(char* str, unsigned char* UnChar, int ucLen){int i = 0;for(i = 0; i < ucLen; i++){//格式化輸str,每unsigned char 轉換字元佔兩位置%x寫輸%X寫輸sprintf(str + i * 2, "%02x&
Time of Update: 2018-07-26
1.別讓異常逃離解構函式的原因 《Effective C++》第三版中條款08建議不要在解構函式中拋出異常,原因是C++異常機制不能同時處理兩個或兩個以上的異常。多個異常同時存在的情況下,程式若不結束,會導致不明確行為。如下代碼: class Widget{public: ~Widget(){...} //假設這個可能吐出一個異常};void dosomething(){ vector<Widget> v;}
Time of Update: 2018-07-26
題目如下:一個頁面時管理系統使用FIFO、ORT、LRU頁面置換演算法,如果一個作業的頁面走向為:2,3,2,1,5,2,4,5,3,2,5,2,。當分配給改作業的物理頁框數為3時,計算訪問過程中發生的缺頁中斷次數和缺頁中斷率。 要求編程實現求解。在理解三種頁面置換演算法的原理後不難實現,在此給出實現代碼,為了避免代碼太亂,在此分為三個程式: FIFO: ////by zwy #include
Time of Update: 2018-07-26
原文地址:http://xerces.apache.org/xerces-c/program-dom.html 設計目標 DOM的C++實現是基於阿帕奇推薦的DOM(Apache Recommended DOM C++ binding). 設計目標是為了滿足如下需求:1.降低記憶體佔用率.2.提高應用程式的效能,特別是那些伺服器類型和多線程的應用程式.3.多處理系統中優異的延展性.4.比起Java來其風格更像C++
Time of Update: 2018-07-26
1.背景 一個良好的編程規範和風格是一名程式猿成熟的標誌。規範的編碼可以減少代碼冗餘,降低出錯機率,便於代碼管理和代碼交流等等,事實上,其作用遠不止這些,我們要牢記編碼規範在心中啊。 Google的項目大多使用C++開収。每一個C++程式員也都知道,C++具有徆多強大的詫言特性,但返種強大丌可避免的導致它的複雜,而複雜性會使得代碼更容易出現bug、難亍閱諾和維護。 本指南的目的是通過詳紳闡述如何迕行C++編碼來規避其複雜性,使得代碼在有效使用C++詫言特性的同時迓易亍管理。
Time of Update: 2018-07-26
HawkNL,C語言實現的跨平台網路函數庫,許多網路程式使用ACE開發,不過ACE是一個重量級的庫,在分布式運算上有很好的架構,對一些小的網路程式而言,HawkNL也許更適合 boost.asio 另一個網路函數庫,是C++實現的,boost庫的一部分 sqlite,嵌入式資料庫 ,類似於berkerly DB,但berkerly
Time of Update: 2018-07-26
XML是由World WideWeb聯盟(W3C)定義的元語言。它已經成為一種通用的資料交換格式,它的平台無關性,語言無關性,系統無關性,給Data Integration與互動帶來了極大的方便。XML在不同的語言裡解析方式都是一樣的,只不過實現的文法不同而已。
Time of Update: 2018-07-26
#include <stdio.h> void rhombus(int line); int main(int line) { printf("請輸入你想產生的菱形的長度:"); scanf("%d",&line); rhombus(line); return 0; } void rhombus(int
Time of Update: 2018-07-26
#include<stdio.h> int main(){ int a,b,c,d; //表示四個整數 int n1,n2,n3,n4; //表示四個整數的係數 int x,flag; for(a=1;a<=40;a++) for(b=a+1;b<=40-a;b++) for(c=b+1;c<40-a-b;c++) if((d=40-a-b-c)>=c){ for(flag=1,x=1;x<41&&
Time of Update: 2018-07-26
/***************************************************************************************************檔案作用: CSV資料檔案的處理開發環境: Win10+STL時間地點: 文津樓 2017.4.24作 者: 九月*************************************************************
Time of Update: 2018-07-26
模板是泛型程式設計的基礎。所謂泛型程式設計就是編寫與類型無關的邏輯代碼,是一種複用的方式。模板分為模板函數和模板類。 首先,我們不使用模版函數,該函數用來實現比較兩個數是否相等。 bool IsEqual(int left, int right)//--->int型{ return left&
Time of Update: 2018-07-26
1,簡述一下vector的基本操作,它的size,capacity(),clear,reverse,reserve, push_back等。。。 2,說說,vector的儲存特性,是順序儲存還是如同鏈表般,如果是順序儲存的話,那麼是如何執行 erase,insert等函數,。。。(假如後面的空間不夠的話,我們需要合理的演算法來重新找出一塊 相應的空間嗎。。。拷貝,回收嗎。。。是不是特別麻煩),如果是鏈式儲存的話,那麼它又是如何做到快速 的訪問的(通過下標來的)
Time of Update: 2018-07-26
#include<stdio.h>int main(){ int char_num=0,int_num=0,space_num=0,other_num=0; char ch; while((ch=getchar())!='\n') { if(ch<='z'&&ch>='a'||ch<='Z'&&ch>='A') { char_num++; }
Time of Update: 2018-07-26
歸併排序的最壞已耗用時間為 O(NlogN) O(N\log N)。它的思想是把兩個有序的子序列,通過一次遍曆,合并且有序的放在第三個序列中。顯然合并兩個已排序的表的時間是線性,最多進行 N−1 N-1次比較,其中N是元素的總個數。對總的已耗用時間進行推導如下: 假設N是2的冪次,從而每次總能分裂成兩個相等的子列。對於 N=1
Time of Update: 2018-07-26
建立源檔案List.cpp include "List.h"int main(){ Test(); system("pause"); return 0;} 建立標頭檔List.h
Time of Update: 2018-07-26
什麼是對象池? 我們反覆執行個體化一些對象的時候,儘管會使用預製體,但是反覆大量執行個體化對象效率是底下的。這時候就使用對象池。對象池,它是一個用來維護對象的結構,稱之為池。當你需要對象的時候從池中擷取一個對象,而不是執行個體化一個新的對象;當不再需要這個對象的時候則從池中銷毀這個對象。其實對象池的本質就是允許我們擷取一個原始的對象(這個對象的屬性是原始的)而不管這個對象是新New出來的還是早就有的迴圈使用的。 對象池模式的簡單實現 <code
Time of Update: 2018-07-26
#define _CRT_SECURE_NO_WARNINGS 1#include<iostream>using namespace std;//單鏈表的實現#include<assert.h>typedef int DataType;typedef struct SListNode{ DataType _data;  
Time of Update: 2018-07-26
&nbs
Time of Update: 2018-07-26
在C語言中,static的字面意思很容易把我們匯入歧途,其實作用有三條: (1)第一條也是最重要的一條:隱藏 當我們同事編譯多個檔案時,所有未加static首碼的全域變數和函數都具有全域可見度,舉例來說:同時編譯2個源檔案:a.c和main.c 下面是a.c的內容 char a = ' A ' ; // global variable
Time of Update: 2018-07-26
本篇文章是繼續第一篇筆記的續。 17.Factory Method模式 一個進階設計通常要求基於一個現有物件類型來建立一個“適當”類型的對象。例如,我們可能擁有一個指向某種類型的Employee對象的指標或引用,現在需要為該類型的Employee產生一個適當的HRInfo對象,如圖: 一般情況下我們會採用一下兩種不好的方式: 使用一個“類型編碼”和switch class Employee { public: enum Type{SALARY,