C#美味:用@符號讓C#語言中的保留字做變數名

文章目錄 @參考文獻 在c和c++中,我們知道沒辦法起一個變數名叫int,因為這是C/C++保留的關鍵字,起這麼一個變數名沒辦法區分到底是int類型還是int變數。事實上在C#中也有這麼一條規矩,就是不能起一個變數名是保留的關鍵字。如: 在C/C++中,我們是無能為力的,你必須起一個不叫int的,比如加個底線。。當然,C#中也可以這麼幹。 @今天閱讀《C# 3.0 in a Nutshell, 3rd

c#美味:使用checked語句防止資料溢出

文章目錄 checked unchecked幾個注意參考資料 在C#中有一個關鍵字checked,它用來判斷當前上下文中的數值運算和數值轉換是否會溢出。如是是常量溢出,那在編譯時間就能發現;如果是變數溢出,那在運行時會拋出OverflowException。數值運算有:++   —   - (unary)   +   -   *   / 有了這個就不用擔心資料溢出了。 checkedchecked

c#美味:NTFS中檔案被鎖定導致Process.Start失敗

上周工作中遇到一個奇怪的問題,解決之後想想還是寫出來和大家分享一下。故障描述:在A程式中使用Process.Start方法調用一個B.exe的檔案時,程式總會自動結束。系統描述:Windows XP Pro SP3嘗試過的解決辦法:b.exe檔案是存在的 手動執行b.exe是沒有任何問題的。 a程式調用一個c.exe也是沒有問題的。 到此,我基本確認問題出在b.exe上面。

C++零食:用Windows API分解路徑

在很多代碼中看到,由於需要擷取一個路徑字串中的檔案名稱或者副檔名,很多程式員都用了c庫中的字串尋找函數來擷取。這樣子寫得代碼很多,也麻煩。 其實在VC中,可以用更好的方法來擷取。沒有什麼特別多說明,代碼如下: LPTSTR szfileName = new TCHAR[MAX_PATH]; GetModuleFileName(NULL, szfileName , MAX_PATH); // 擷取盤符、檔案名稱、副檔名等資訊 wchar_t

C++零食:HRESULT 與 Windows Error Codes 不是一回事

文章目錄 SUCCEEDEDHRESULT常見HRESULT值Windows Error CodeWindows Error Codes常見的Windows Error Codes參考資料 在用C++來開發Windows程式時,經常看到下面的判斷情況:HRESULT hr = ::RegCreateKeyEx(hk, szKeyPath, 0, NULL, REG_OPTION_NON_VOLATILE, KEY_QUERY_VALUE,

C++零食:wprintf 中使用%I64d格式化輸出LONGLONG

文章目錄 LONGLONG例子參考資料 在寫某個程式時,因為需要用到一個大的整數,就是要了LONGLONG型:LONGLONG nLarge;但是格式化時不知道應該用什麼字元,用 %d,%l都不行。 LONGLONGLONGLONG其實就是int64類型。在winnt.h可以看到:typedef __int64

C++零食:WTL中使用雙緩衝避免閃爍

文章目錄  WTL中的CDoubleBufferImpl參考資料

C++零食:重啟後消失的註冊表索引值

文章目錄 Bug描述Why? 原因解決辦法參考資料 今天遇到一個bug,折騰了半天才解決掉,分享給大家。 Bug描述一位開發人員調用下面的代碼來建立一個註冊表索引值:HKEY hKey;if(::RegOpenKeyEx(HKEY_CURRENT_USER, DemoRegKey, 0, KEY_WRITE, &hKey) != ERROR_SUCCESS){ RegCreateKeyEx(HKEY_CURRENT_USER,

C++零食:VC中使用ForceInclude來強制包含stdafx.h

文章目錄 ForceIncludes參考資料 在使用VC編程中,為了加快編譯,vc編譯器提供了先行編譯的功能。即在cpp代碼中包含stdafx.h,那麼就可以使用到先行編譯。如下所示:#include "stdafx.h"class Demo{public: Demo(void); ~Demo(void);};注意: #include “stdafx.h”

C++零食:使用Unicode版的預定義宏__FUNCTION__

文章目錄 __FUNCTIONW__ 在C++中支援一種預定義宏。比如:__FILE__: 就是當前原始碼檔案名稱__LINE__: 就是當前原始碼的行號這些宏可以在printf等語句中直接作為字串使用,調試的時候很方便。如下代碼所示:int _tmain(int argc, _TCHAR* argv[]){ printf("Line:%d", __LINE__); return

C#美味:Linq入門 講座

文章目錄 線上查看:pdf下載: 參考資料: 內容: Linq雖然出來很久了。但是一直沒有專門去研究,很多人也因為不太理解而不太感興趣。這個投影片是我為團隊培訓時寫的,希望能對更多的人有協助。主要內容還是對linq的介紹,適合完全沒有瞭解過linq的同學。 線上查看:Linq 入門View more presentations from

7z系列之一:7zip SDK中C++模組的編譯

文章目錄 7zipSDK7zip SDK中的C++模組編譯7zxr.dll

[c#美味]使用Http Head方法擷取檔案長度

文章目錄 需求解決辦法理論實踐參考資料 需求有一個固定URL的檔案,伺服器端程式會週期性更新這個檔案,現在需要寫一個工具來監控這個檔案的變化。 解決辦法最初我想到的是把這個檔案下載下來,然後通過大小來判斷檔案是否改變(已知該檔案變化時大小會變化)。但是這個檔案有時會很大,如果每次都下載下來會消耗一定的時間,希望能更快一些。 搜尋了一下,發現Http除了Get和Post方法外,還有Head方法,它可以擷取http頭資訊,其中的Content-

[c#美味] c#4.0中的具名引數

文章目錄 Before 4.0After 4.0結合預設參數參數的調用順序不好之處參考資料 什麼是具名引數?具名引數(Named Arguments)就是說在調用函數時可以通過指定參數名稱的方式來調用參數。它最大的好處就是方便調用參數時按調用者的需要來排列順序,而不必死守函式宣告時的順序,同時結合預設參數值的特性,可以選擇使用預設參數還是不使用預設參數。 Before 4.0如下面樣本:static void Main(string[]

[c#美味] c#4中預設參數和具名引數後的函數重載

文章目錄 問題提出重載決策規則執行個體分析參考資料: 問題提出由於C#4中新增了預設參數和具名引數,導致函數重載的情況變得比以前複雜了一些。舉例如下,假設有下面4個函數:static void Fun(string name, int num = 1) {}static void Fun(object o){}static void Fun(int num, string name = "Greenerycn") {}static

[c++]字串替換函數

在C++中,字串替換有很多方法,這裡主要說一下STL裡的WString中的替換,雖然WString內建了一個Replace函數,但是只能替換一次,太不好了,因此單獨寫了個替換函數[函數]       /**         * @brief   實現字串替換         * @param   orignStr 源串         * @param   oldStr  尋找的串         * @param   newStr  替換的新串

[c#美味] c#4.0中的預設參數

文章目錄 Before c# 4.0After 4.0背後的故事參考資料: 在C#4.0中,對於我來說,首先吸引我的就是預設參數這個特性。當我在Python中非常流暢的使用這個特性時,C#卻只能寫大量的重載函數,然後一個調一個,最終調用的是參數最多的那一個。Before c# 4.0在4.0之前,我要一個函數的參數有預設值時,就必須要這樣寫:static void OldFun(string param1){

一文的C#正則實現

看了<<字串進階截取和統計>>一文,確實正則可以實現,而且更為簡單,後來看到<<字串進階截取和統計>>一文的看法與Regex的實現中用java實現,所以我簡單寫了一下,把c#的實現貼出來。寫到不好之處,大家多多指教。實現原理:使用Regex中的MatchCollection類,它會把搜尋到的字串儲存到一個數組中,並包含相關資訊。 代碼:Code highlighting produced by Actipro CodeHighlighter

[C++]VC中先行編譯的標頭檔放那裡?

用C++寫程式,肯定要用先行編譯標頭檔,就是那個stdafx.h.不過我一直以為只要在.cpp檔案中包含stdafx.h 就使用了先行編譯標頭檔,其實不對。在VC++中,先行編譯標頭檔是指放到stdafx.h中的標頭檔才會有效果。如下: file: stdafx.h// stdafx.h : include file for standard system include files,// or project specific include files that are used

c#美味:用DateTime的ParseExact方法解析特殊的日期時間

文章目錄  參考資料 今天遇到一個特別的需求,需要從下面的字串中轉換成一個DateTime對象: [07-13 15:50:42]主要問題是這個時間不是標準的時間,而是自訂的格式,即開頭是月-日,然後是時間。使用最常用的DateTime.Parse(string dateTimeStr)無法轉換,問題就在於這個自訂格式上。 搜尋了之後,我找到了下面的方法:public static DateTime ParseExact(string

總頁數: 4314 1 .... 479 480 481 482 483 .... 4314 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.