Time of Update: 2018-12-05
要使用Regex,首先要有類庫支援,C++以前不像Java或者C#有完整的類庫使用,但是在Tr1中早已提供了正則庫,只是很少被人們注意罷了 TR1中包含了一個正則庫,來自Boost的 regex,已經納入了0x新標準,但是新標準遙遙無期。即便如此,現在很多編譯器也已經支援了,特別是微軟,步伐最快!雖然現在新標準還未完全支援,但是早點瞭解一下也是好的:#include <iostream>#include <regex>int _tmain(int argc,
Time of Update: 2018-12-05
前天,我和以前公司的幾個同事在一起聚餐。其中一位同事在對自己未來的打算時,說可能會回到杭州繼續寫代碼。我聽了之後,說:如果對技術不感興趣,還是趁早離開這個行業。寫代碼的辛苦程度不是一般人能承受的。 下文
Time of Update: 2018-12-05
#include <iostream>#include <boost/signals2/signal.hpp>using std::cout;using std::endl;struct A{void f() {int a = 2;event(1, &a);}boost::signals2::signal<void (int, int*)> event;};void h5(int i, int* p) {cout << "h5\t"
Time of Update: 2018-12-05
在C#語言中,“||”與“&&”布林運算子具有短路特性,相當於VB的OrElse和AndAlso運算子而“|”與“&”運算子不僅能用於數值運算,也能用於布爾運算,作為布林運算子兩者都沒有短路特性,相當於VB的Or和And運算子註:其實其他C系列語言(C/C++以及Java)也具有同樣的語言特性。using System;namespace ConsoleApplication1{ class Program { static bool f()
Time of Update: 2018-12-05
這是我第一次用C++的多重繼承,就遭遇了重大挫折。我天生愚笨,領悟也不強,所以以前一直沒敢碰這個玩意,這次實在是迫不得已,動了邪念。廢話不多說,請看如下情況:我有一個類AClass A { Std :: vector<int> vec ;} ;還有一個類BClass B {;} ;現在用C類去繼承A和B,Class C : public A, Public B {;} ;現在我產生了一個執行個體:A* a = new C ; 由於某種原因我要調用B的函數,我只
Time of Update: 2018-12-05
#include <type_traits>using namespace std;template<bool C, typename... Rest>struct or_impl : true_type{};template<typename Second, typename... Rest>struct or_impl<false, Second, Rest...> : or_impl<Second::value, Rest...>
Time of Update: 2018-12-05
如果一個變數你需要幾種可能存在的值,那麼就可以被定義成為枚舉類型。之所以叫枚舉就是說將變數或者叫對象可能存在的情況也可以說是可能的值一一例舉出來。 舉個例子來說明一吧,為了讓大家更明白一點,比如一個鉛筆合中有一支筆,但在沒有開啟之前你並不知道它是什麼筆,可能是鉛筆也可能是鋼筆,這裡有兩種可能,那麼你就可以定義一個枚舉類型來表示它! enum
Time of Update: 2018-12-05
最近看了老趙的博文,意識到lambda不僅僅提供了一個仿函數的文法糖,而在於能封裝環境變數,從而更輕鬆的實現非同步函數調用.之前利用模板實現過非同步函數調用,因為VS2008以前的C++不支援variadic templates和lambda,所以,其實現是用宏實現的0至N個參數的仿函數.因此,本次修改主要是保留以前的代碼的基礎上,增加lambda的支援.但在擷取lambda的傳回值的地方費了會兒時間,遂Google之,然後找到這個連結:http://blog.csdn.net/zwvista/
Time of Update: 2018-12-05
轉載於:http://blog.csdn.net/woxueliuyun/archive/2008/02/29/2132543.aspx 一、C++中不能使用random()函數 random函數不是ANSI C標準,不能在gcc,vc等編譯器下編譯通過。但在C語言中int random(num)可以這樣使用,它返回的是0至num-1的一個隨機數。 可改用C++下的rand函數來實現。
Time of Update: 2018-12-05
文章目錄 RelatedShare 一篇比較精鍊的從C到C++語言文法過度的博文,儘管不完美,但值得借鑒。轉自:http://triptico.com/docs/c2cpp.htmlSo you were a great system programmer, back in the old days; your low level programs were celebrated by clever people, you loved
Time of Update: 2018-12-05
物件導向的思想:封裝,繼承,多態性.1.範圍運算子"::"範圍:變數在程式中的起作用範圍簡單分為:全域範圍,局部範圍,語句範圍範圍優先順序:範圍越小優先順序越高範圍運算子:"::"如果希望在局部變數的範圍內使用同名的全域變數,可以在該變數前加上"::","::"稱為範圍運算子.//範圍#include <iostream>usingnamespace std;int avar=10;//全域變數avarint main(){int
Time of Update: 2018-12-05
JAVA通過JNI調用本地方法,而本地方法是以庫檔案的形式存放的(在WINDOWS平台上是DLL檔案形式,在UNIX機器上是SO檔案形式)。通過調用本地的庫檔案的內部方法,使JAVA可以實現和本地機器的緊密聯絡,調用系統級的各介面方法。下面簡單介紹步驟:1。首先來看一個Java類,稍後再具體來解釋package wen.hui;public class TestDll {/* * 首先需要在類中聲明所調用的庫名稱 *
Time of Update: 2018-12-05
註:今天不知道怎麼的CSDN的部落格貼代碼和貼圖片的按鈕好像有點問題,我貼不出來,只能用複製代碼說明問題了 至於單例模式,是設計模式中最為基本的模式之一,說直白點就是在程式中確保任何時候都只有一個執行個體,比如windows的檔案管理類,還有就是在cocos2dx中的遊戲導演類等等,那麼如何來確保任何時候都只能有一個執行個體勒?這個時候我們的static就起作用了! 前幾天一個朋友問我cocos2dx中的這一行代碼是什麼意思,為什麼要這麼寫,代碼如下:CCSize
Time of Update: 2018-12-05
剛開始我一直感覺建造者模式不太好懂,也許是我笨了點緣故,勤能補拙嘛,所以只能多看多想了大話設計模式裡面那個對於建造者模式我講解,個人感覺不太好理解,我是看了很多遍也沒體會到那樣設計的精髓,後來在另一本設計模式上才稍微領悟到了點, 在這裡我想到一個比較形象的例子:比如我某天去吃蘭州拉麵,他們有不同的套餐,套餐裡包含的種類是一樣的,都有一碗拉麵,一份泡菜,一杯飲料。但是不同的套餐裡這3樣又都不是全部一樣的,也許分量和品質有差別。此時我們就可以用建造者模式。這裡我沒有合適的UML圖,大致說一下模型:客
Time of Update: 2018-12-05
C 風格(C-style)強制轉型如下:(T) exdivssion // cast exdivssion to be of type T函數風格(Function-style)強制轉型使用這樣的文法:T(exdivssion) // cast exdivssion to be of type
Time of Update: 2018-12-05
策略模式是一種比較常用的設計模式,他主要體現在對象可以有某個行為,但是在不同的情境時用不同的實現方法!在軟體開發中也常常遇到類似的情況,實現某一個功能有多種演算法或者策略,我們可以根據環境或者條件的不同選擇不同的演算法或者策略來完成該功能。如尋找、排序等,一種常用的方法是寫入程式碼(Hard
Time of Update: 2018-12-05
char Dec2HexChar(short int n) { if ( 0 <= n && n <= 9 ) { return char( short('0') + n ); } else if ( 10 <= n && n <= 15 ) { return char( short('A') + n - 10 ); } else { return char(0);
Time of Update: 2018-12-05
實習滿2個月了.謹以此文緬懷本來應該是我最後一個暑假卻用來實習的暑假.T_T(樓主強烈聲明,實習生活很nice,前面只是吐槽,請無視) 入正題,循慣例,先:
Time of Update: 2018-12-05
在Windows還是習慣用VS2005但是現在到了Linux下,開發起來C/C++程式就沒有那麼得心應 手的IDE了。雖然很多人推薦E開頭那個主要作為Java開發的IDE,不過安上外掛程式後感覺不大好,一個是那個智能完成功能反應有點遲鈍,對標準庫的支援 不大好,另一個是編譯起來還是麻煩,不能自動根據工程產生合適的makefile(或者是我沒發現這個功能哈,一直用它的同志們不要笑我土) 發掘了半天……發現一個Monkey
Time of Update: 2018-12-05
學習了下“落鶴生”的Native