Time of Update: 2018-12-04
最近碰到一個這樣的問題:我從一個控制項中擷取時間值的字串,然後把這個字串轉化成DateTime對象,在控制項中顯示的時間值是: 2005-06-07 12:23:34分,但是我通過一個函數去擷取這個值後,得到的是2005-6-7 12:23:34,因此當設定時間格式為: yyyy-MM-dd HH:mm:ss
Time of Update: 2018-12-04
最近有人問起C/C++混合編程的問題,google了一些資料放這裡==================================================http://www.gbunix.com/htmldata/2004_12/14/20/article_828_1.html如果C++程式要調用已經被編譯後的C函數,該怎麼辦?假設某個C函數的聲明如下:void foo(int x, int
Time of Update: 2018-12-04
C++ new_handler空間分配失敗處理 動態分配空間、記憶體動態分配與回收對於任何一個程式員來說都尤為重要,特別是嵌入式C/C++程式員更為如此,malloc, remalloc, new等等,很有可能就申請空間失敗,對申請失敗的異常處理更是比較棘手。在C++中提倡使用new來代替malloc,因為new比malloc更加安全,更加效率。 很多程式員,包括我自己都喜歡性的使用這種C/C++代碼來申請空間。 #include <iostream>#include
Time of Update: 2018-12-04
最近由於忙著解決個人單身的問題,時隔這麼久才更新第五章。上一章主要講了Google V8的Context概念。那麼其實Google V8的基本概念還有FunctionTemplate, ObjectTemplate等比較重要的基本概念,這些概念將在後續章節中進行滲透。本章主要來講講如何通過V8來實現JS調用C++。JS調用C++,分為JS調用C++函數(全域),和調用C++類。JS調用C++函數JS調用C++函數,就是通過FunctionTemplate和ObjectTemplate進行擴充的。
Time of Update: 2018-12-04
/******************************************************************* Thread Pool For Win32 * VC++ 6, BC++ 5.5(Free), GCC(Free)* Update : 2004.6.9 llBird wushaojian@21cn.comUse:1):void threadfunc(void *p){ //...} ThreadPool tp; for(i=0; i<100;
Time of Update: 2018-12-04
先列一下我手頭的資料: 1.The C Programming Language 2.The C Standar Library 3. Programming Language C 1988 http://flash-gordon.me.uk/ansi.c.txt 4. Rationale for International Standard—Programming Languages— C
Time of Update: 2018-12-04
#include <iostream>using namespace std;#define I 50 /*最大進程數*/#define J 100 /*最大資源數*/#define False 0#define True 1int Available[J]; /*可利用資源數*/int MAX[I][J]; /*最大需求矩陣*/int Allocation[I][J]; /*分配矩陣*/int Need[I][J];
Time of Update: 2018-12-04
經常有朋友問我如何將C++對象轉換成JSON格式字串。我的回答通常是CppCMS中的json::value. 我也寫過一篇文章介紹該技術。但是最近有些不同的想法。因為用到一個vector<shared_ptr<> > 資料結構,json::value不支援這個模板特化。同時也發現json::value的設計思想是將所有的c++Object Storage Service在std::map中,然後再匯出為json字串。但是在我開發的和看到的很多web service開發中,
Time of Update: 2018-12-04
Java有三個選擇1)採用普通的類有公有建構函式,沒有成員變數,提供了很多成員函數作為方法,調用代碼如下: Helper helper = new
Time of Update: 2018-12-04
涉及到演算法,經常遇到位操作,而這些位操作都需要固定寬度的整數,比如下面的例子:void Tea(uint32_t* v, uint32_t* k) { uint32_t v0 = v[0], v1 = v[1], sum = 0, i; /* set up */ uint32_t delta = 0x9e3779b9; /* a key schedule constant */ uint32_t k0 = k[0],
Time of Update: 2018-12-04
主要要注意的是smtp認證的問題。代碼很簡單,如下:調用代碼:namespace EmailTest{ class Program { static void Main(string[] args) { try { SMTPEmailSender sender = new SMTPEmailSender("mail.longdayinfo.com",
Time of Update: 2018-12-04
有一陣子不琢磨C++了。今天想查看一下自己的Ubuntu下的一個GCC4.7.3編譯的程式究竟依賴了哪些庫。找了好久發現自己居然忘記了ldd命令。使用很簡單,採用-v參數將詳細資料顯示出來。知識不用就會遺忘,腦袋不用就會生鏽。$ ldd -v ./service linux-vdso.so.1 => (0x00007fff983fe000)libboost_system.so.1.53.0 => /usr/lib/libboost_system.so.1.53.0 (0x00007
Time of Update: 2018-12-04
以前有不少朋友問關於學習各種技術的推薦書籍的問題,這裡把我覺得比較好的一些書籍列一下,希望能起到拋磚引玉的作用就好了 C++C++ Primer,Thinking in C++,The Standard C++ Library,The C++ Programming Language:這幾本書就不多介紹了,很有名的書,我就不羅嗦了Effective C++和More Effective C++, by Scott
Time of Update: 2018-12-04
解決外部符號錯誤:_main,_WinMain@16,__beginthreadex在建立MFC項目時, 不使用MFC AppWizard嚮導, 如果沒有設定好項目參數, 就會在編譯時間產生很多串連錯誤, 如error LNK2001錯誤, 典型的錯誤提示有:libcmtd.lib(crt0.obj) : error LNK2001: unresolved external symbol _mainLIBCD.lib(wincrt0.obj) : error LNK2001: unresolv
Time of Update: 2018-12-04
剛才剛看完Anders的PDC Talk,感覺C# 4.0的變化不是很大,但是很多改動都方便了使用者的使用,有些甚至當初Anders本來不願意加入的功能最後由於使用者的呼聲最後還是加進去了(如Optional Parameters),可見Anders對使用者的意見還是非常重視的。稍微總結一下,C# 4.0中有下面這些功能:1.
Time of Update: 2018-12-04
在C/C++大型項目中,錯誤管理在項目中起著舉足輕重的作用,以我自己的項目經驗以及觀摩其他項目,錯誤管理對項目架構以及開發效率有著很大的影響。對於錯誤管理的認識大致分為三類:剛剛開始寫程式的新手,滿篇程式看不到一處關於返回出錯的處理,更不用說出錯管理了。說明他沒認識到出錯管理的重要性程式中到處都能看到關於出錯的處理。認識到了錯誤,但是處理方式欠缺程式中幾乎不會很明顯的看到關於錯誤的處理。這是錯誤管理的最高境界。
Time of Update: 2018-12-04
用C#做介面,效率比MFC要高的多。wince 下,如果需要製作介面,或者需要訪問sqlce資料庫,C#就非常方便了,如果用MFC,你會發現,訪問sqlce資料庫需要設定很多COM介面很麻煩。 初次使用C#開發智慧型裝置應用程式,也就是在wince上啟動並執行應用程式,用VS2005把C#介面程式寫好之後,然後編譯調試下載。出現了0x80070070: 磁碟空間不足 錯誤資訊如下: ------ 已啟動產生: 項目: File_cp, 配置: Debug Any CPU
Time of Update: 2018-12-04
C++做久了,經常用C++的方式去思考問題,有時候就突然發現自己不太會寫C程式了。寫程式的時候,難免會用到第三方外掛程式或者是庫,而這些外掛程式或者庫很多時候都不能完全滿足我們的需求,遇到這種情況,如果全是C++,那好辦,寫個適配器就OK了,關於適配器模式參考我的部落格《C++ Adaptor 設計模式》 如果要提供給C程式使用,那就需要自己封裝C程式可以使用的庫。前幾天在CSDN
Time of Update: 2018-12-04
深入理解C++資料成員的繼承 最近在工作方面遇到了這樣的問題,即所有的子類都必須擁有一個資料成員,為了對介面進行約束,最好的辦法就是將該資料成員放在基類中並使用protected修飾。首先用代碼來描述我的問題:class BaseB;class BaseA{Base();virtual ~Base();//...other operationprotected:BaseB *m_p;}其實說起來很簡單,即BaseA,BaseB都是基類,BaseA中有一個BaseB的指標,因為在以後的子類中,
Time of Update: 2018-12-04
昨天我在調試 板卡的DEMO的時候發現編譯不成功.出現了__RTC等的運行庫問題。原來是他們給的DEMO是用VS2008寫的,然後又只給了VC6的工程,並且未給VC6下的庫,只給了VC9下的庫!!!不過通過這次問題,以後出現C Rumtime問題我就有了一定的瞭解。現轉載兩篇文章如下!在VC6中沒有找到C Rumtime的設定選項,只好在VS2005上調試,發現灰常之不習慣!!!!!!! VC7/VC8開發的庫在VC6中的使用問題--轉載 現