2013年9月25日 星期三

C++ regex

之前看到C++ 11發表那些新特色,就滿懷心喜的想要來嘗試一下,第一個我就嘗試了一下regular expression,因為在python中用的十分爽,簡單易用,結果呢?  讓我又喜又氣! 沒錯你沒看錯,為何我會有這種奇異的感受呢?
這就要請先看看下圖 :)


在visual studio裡面一切事都表現正常的,讓我十分開心,但是悲劇的是,當我開始用code blocks的時候,發現竟然得到的答案是不一樣的!! 竟然是沒有任何match,這讓我非常shock阿,起初我還以為是我regular expression寫錯了,畢竟又不是很常用,搞不好我忘了什麼重要的東西,心裡先這樣安慰自己一下:),但是經過多次嘗試後,仍然一樣,最後我用了python來測試一下,發現,很好,是我要的結果阿! 那到底是錯在哪?


經過我的多次搜尋,我發現因為C++ 11還太過新,目前沒有compiler是能夠完全支援的,但我在網路上看到評分,VS的compiler支援度竟然是最差?,G++反而是最多的,誰知道今天VS反而能夠滿足我= =,而且G++竟然是沒支援,讓我原本滿懷期待的心情都落空了 :( 我真心懷疑那個評分是正確的嗎? 目前,我看大概要用一些新特色的話,就是用boost這個library吧,畢竟有許多C11的特色都是借鏡這個library的,另外,也免的到時候又哪個compiler沒支援你要的特色,都不知道錯在哪了。


最後抱怨一下 :) 要是沒支援好歹也給的錯誤訊息,說你沒支援阿!! 讓我都不知道錯在哪...

0 意見:

張貼留言