uses_conversion是用來轉換型別的,比如我們很常見的問題:
在socket程式設計時候,我們的ip位址從介面上輸進去一般都使用cstring型別的,可是在sockaddr_in中的inet_addr卻是const char *我們就不能直接用cstring來用。我們就可以使用t2a()巨集了。
sockaddr_in localaddr;
cstring m_ip = l"192.168.1.2";
uses_conversion;
localaddr.sin_family = af_inet;
localaddr.sin_addr.s_un.s_addr = inet_addr(t2a(m_ip));
當然使用uses_conversion也是要注意乙個很重要的問題。
uses_conversion它是在堆疊上分配空間的,也就是說你在你在函式未結束就不會被釋放掉。所有要注意不要在乙個函式中用while迴圈執行它,不然棧空間就馬上會分配完(棧空間一般只有2m,很小)。
關於USES CONVERSION巨集
首先,介紹下 uses conversion 為何物。uses conversion 是atl 中的乙個巨集定義。用於編碼轉換 用的比較多的是 cstring 向lpcwstr 轉換 通俗的說,就是用了這個巨集後,就可以用一系列的字串轉換巨集,有 ole到t,t到ole,ole到w,w到ole等等,...
container of 的的的原理
另外一篇,同樣精彩,揭開linux核心中container of的神秘面紗 華清遠見嵌入式學院講師。在linux 核心中有乙個大名鼎鼎的巨集container of 這個巨集是用來幹嘛的呢?我們先來看看它在核心中是怎樣定義的。呵呵,乍一看不知道是什麼東東。我們先來分析一下container of p...
存在的就是合理的,發生的即是必然的。
筆者有時候會想,什麼是對,什麼是錯?對於追求某一件事情之前首先會考慮,為什麼我要做這件事情。所以經過自我分析和生活周邊環境的總結。我認為,對於乙個人來,這是在站在個體的角度上說。什麼是對的?就是你自己覺得是對的,它就是對的。不過這個只是你自己的想法。主觀上的正確,不代表客觀上也受到了別人的認可。就拿...