Time of Update: 2018-12-05
C#代碼規範 程式員必備的秘笈 1. 引言本文是一套面向C# programmer 和C# developer 進行開發所應遵循的開發規範。按照此規範來開發C#程式可帶來以下益處:· 代碼的編寫保持一致性,· 提高代碼的可讀性和可維護性,· 在團隊開發一個項目的情況下,程式員之間可代碼共用· 易於代碼的回顧,本規範是初版,只適用於一般情況的通用規範,並不能覆蓋所有的情況。2. 檔案組織2.1 C#
Time of Update: 2018-12-05
1:Params 1 public static void UseParams(params object[] list) 2 { 3 for (int i = 0; i < list.Length; i++) 4 { 5 Console.WriteLine(list[i]); 6 } 7 } 8 9 static void Main()10 {11 // 一般做法是先構造一個對象數組,然後將此數組作為方法的參數12 object[] arr =
Time of Update: 2018-12-05
C# 的資料類型有兩種,一種是實值型別(value type),一種是參考型別(reference
Time of Update: 2018-12-05
看到這個題目,是不是很眼熟?在部落格園裡搜下,保證會發現關於這個東東的文章實在是太多了~~~真得是沒有寫得必要,而且我也有點懶得去琢磨字句。(看到這,肯定得來個轉折的了,不然就看不到下文了,不是嗎)但是,為了自己下一篇要寫的文章做參考,還是有必要先補充一下socket基礎知識。注意:如果你已經接觸過socket,那就沒什麼必要耽誤時間看下去了。另外,如果發現其中任何錯誤,歡迎直接指出。 1.按慣例先來介紹下socket Windows中的很多東西都是從Unix領域借鑒過來的,
Time of Update: 2018-12-05
最近用c#寫一個小軟體,要調用VC寫的dll,傳遞參數給dll,由於是Unmanaged 程式碼,所以調用起來有點麻煩,要把參數轉換成Unmanaged 程式碼的指標參數,然後再傳遞給dllview plaincopy to clipboardprint?using System.Runtime.InteropServices; //操作Dll的類空間 class CGicomIndex { [DllImport("Index_dll.dll")]
Time of Update: 2018-12-05
以前整理的Win32 API,可以直接在C#中直接調用,在做WinForm時還是很有協助的。以前用在一個多視窗介面中,當輪詢視窗時,調用API會提高很多效率。 源碼下載 http://files.cnblogs.com/lordeo/win32api.rar 源碼包含三個檔案Win32API.cs,Enums.cs,Structs.cs分別如下 Win32API.cs using System;using System.Drawing;using
Time of Update: 2018-12-05
示範實現用戶端回調的 ASP.NET 網頁。有關更多資訊,請參見在 ASP.NET 網頁中不經過回傳而以編程方式實現用戶端回調。樣本說明下面的程式碼範例分為兩部分。樣本的第一部分示範一個 ASP.NET 網頁(.aspx 頁)。第二部分示範相應的程式碼後置檔案(.aspx.cs 檔案)。代碼C# 複製代碼<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ClientCallback.aspx.cs"
Time of Update: 2018-12-05
class jk{int a=1;public void fun1(){System.out.println("父類funl()") ;}public void fun2(){System.out.println("父類fun2()") ;}} // Student類擴充自jk類,也就繼承了jk類中的fun1()、fun2()方法 class Student2 extends jk{int a=4;char c=45;// 在這裡複寫了jk類中的fun1()方法public void fun1(
Time of Update: 2018-12-05
C#處理JPEG頭資訊的方法-發布:shangke 字型:[增加 減小] 類型:轉載 相信大家肯定都看過用C或C++處理JPEG頭資訊的程式了,我也看了,不過因為我不懂C,看得我頭疼。所以我還是決定用C#來寫吧-曾經有人給我了一張jpg,是1024*1024大小,檔案大小為99kb,做了個金字塔,各層影像大小如下:單位kb我產生的jpg金字塔 為經過任何加工height256 46.2kbheight512 162kbheight1024 557kbPhotoshop產生的jpg金字塔
Time of Update: 2018-12-05
什麼是C/S和B/S結構? C/S又稱Client/Server或客戶/伺服器模式。伺服器通常採用高效能的PC、工作站或小型機,並採用大型資料庫系統,如Oracle、Sybase、Informix或SQLServer。用戶端需要安裝專用的用戶端軟體。 B/S是Brower/Server的縮寫,客戶機上只要安裝一個瀏覽器(Browser),如Netscape Navigator或Internet Explorer,伺服器安裝Oracle、Sybase、Informix或SQL
Time of Update: 2018-12-05
習慣了VB6的靈活、簡單,C#中還真的有一些不習慣。在C#中我建立了兩個Form,分別是Form1和Form2。我在Form1中添加了一個Button1,添加了如下代碼: Form2 newForm = new
Time of Update: 2018-12-05
經常為了防止使用者非正常退出系統,在表單的FormClosing的事件中設定E.Cancel=true。但這樣的結果是,如果當使用者想真正退出的時候,卻真正無法退出了。解決的辦法,原來一直用一個是否可以退出的變數來進行分析,比如我們可以設定IsCanExit,當程式判斷可以退出時,把IsCanExit設定成true,這樣就可以退出了,但這樣仍然很麻煩。
Time of Update: 2018-12-05
1. 引言本文是一套面向C# programmer 和C# developer 進行開發所應遵循的開發規範。按照此規範來開發C#程式可帶來以下益處:· 代碼的編寫保持一致性,· 提高代碼的可讀性和可維護性,· 在團隊開發一個項目的情況下,程式員之間可代碼共用· 易於代碼的回顧,本規範是初版,只適用於一般情況的通用規範,並不能覆蓋所有的情況。2. 檔案組織2.1 C# 源檔案類名或檔案名稱要簡短,不要超過2000LOC,將代碼分割開,
Time of Update: 2018-12-05
為了讓Linq的查詢文法更接近於C#和VB.NET, C# 3.0和VB.NET 9.0基於的模板、匿名方法和迭代器都是LINQ的重要組成部分,其中包括了以下的重要特性:1.隱藏類型的本地變數 C# 3.0提供了一個新的關鍵子var,這樣程式員就可以不需要明確的定義一個本地變數,而是由編譯器根據運算式來初始化該變數。比如: var name="Linq";通過該項特性,不再需要重複本地變數的類型,編譯器會自動的推動類型,同時支援強型別。而且可以省去在foreach迴圈中定義迭代器類型2.
Time of Update: 2018-12-05
標頭檔分庫組織, 先保含通用庫, 然後第三方庫, 然後本程式的Util之類, 最後具體的類 代碼 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->//----------------------------------------------------// 平台#include <windows.h> //--------------
Time of Update: 2018-12-05
有些資訊在儲存時,並不需要佔用一個完整的位元組, 而只需占幾個或一個二進位位。例如在存放一個開關量時,只有0和1 兩種狀態,用一位二進位即可。為了節省儲存空間,並使處理簡便,C語言又提供了一種資料結構,稱為“位域”或“位段”。所謂“位域”是把一個位元組中的二進位劃分為幾個不同的地區,並說明每個地區的位元。每個域有一個網域名稱,允許在程式中按網域名稱進行操作。 這樣就可以把幾個不同的對象用一個位元組的二進位位域來表示。其形式為: struct 位域結構名 { 位域列表
Time of Update: 2018-12-05
文章目錄 一個函數只做一件事類的單一職責原則(Single Responsibility Principle)一個前提:要有單元測試“變小”的代價 在我之前"優雅代碼"的文章中我提到了函數大小規定的問題,寫出優雅簡明代碼的論題集 -- Csharp(C#)篇[1]寫出優雅簡明代碼的論題集 -- Csharp(C#)篇[2] 在這篇文章中我還想更詳細的談談為什麼好的代碼必然不會有大的函數,--
Time of Update: 2018-12-05
本篇繼續介紹WaitHandler類及其子類Mutex,ManualResetEvent,AutoResetEvent的用法。.NET中線程同步的方式多的讓人看了眼花繚亂,究竟該怎麼去理解呢?其實,我們拋開.NET環境看線程同步,無非是執行兩種操作:一是互斥/加鎖,目的是保證臨界區代碼操作的“原子性”;另一種是號誌操作,目的是保證多個線程按照一定順序執行,如生產者線程要先於消費者線程執行。.NET中線程同步的類無非是對這兩種方式的封裝,目的歸根結底都可以歸結為實現互斥/加鎖或者是號誌這兩種方式
Time of Update: 2018-12-05
引子:委託是一種類型,它的地位與class 、struct、enum等是一樣的,我們可以這樣說:在任何一個可以聲明class的地方都可以聲明一個delegate。我們經常將委託與事件放在一起去理解,其實這隻是委託的一個應用。要想理解委託必須透過現象究其本質,委託到底是幹什麼用的?現象:public delegate void MyDelegate();public delegate string MyDelegate(string
Time of Update: 2018-12-05
int[] arr = new int[] { 1, 5, 6, 9, 2, 45, 36 };//任意數組 Recursion(arr, arr.Length - 1); foreach (var item in arr) { Console.WriteLine(item); } /// <summary> /// 遞迴遍曆 /// </summary&