Time of Update: 2018-12-08
請看下面代碼:java:String s1 = "abc";String s2 = new String("abc");String s3 = "a" + "bc";System.out.println(s1.equals(s2));System.out.println(s1.equals(s3));System.out.println(s1 == s2);System.out.println(s1 == s3);c#:String s1 = "abc";String s2 = new
Time of Update: 2018-12-08
在程式中呼叫指令碼,能夠給應用增加很多靈活性,下面是兩種呼叫指令碼的方法方法1:直接調用System.Diagnostics.Process proc = new System.Diagnostics.Process();proc.StartInfo.FileName="wscript";proc.StartInfo.Arguments=" hello.js"; proc.StartInfo.UseShellExecute = false;proc.Start();方法2:使用MS的Window
Time of Update: 2018-12-08
namespacenamespace 關鍵字用於聲明一個範圍。此命名空間範圍允許您組織代碼並為您提供了建立全域唯一類型的方法:命名空間名可以是任何合法的標識符。命名空間名可以包含句號。 即使未顯式聲明命名空間,也會建立預設命名空間。該未命名的命名空間(有時稱為全域命名空間)存在於每一個檔案中。全域命名空間中的任何標識符都可用於命名的命名空間中。 命名空間隱式具有公用訪問權,並且這是不可修改的。 在兩個或更多的聲明中定義一個命名空間是可以的。如在同一個檔案中分別將兩個類定義為
Time of Update: 2018-12-08
nullnull 關鍵字是表示不引用任何對象的Null 參考的文字值。null 是參考型別變數的預設值。 C# 2.0 引入了可為空白值的類型,這是可以設定成未定義值的資料類型。可為空白值的類型可以表示一般類型的基礎值範圍內的值,在加上一個null值,其相當於通常實值型別與null的並集。 可空類型 是 System.Nullable 結構的執行個體。System.Nullable<T>// 或簡寫為T?// 兩者可以互換,T為實值型別可空類型表示可被賦值為 null
Time of Update: 2018-12-08
如果在為方法聲明參數時未使用 ref 或 out,則該參數可以具有關聯的值。可以在方法中更改該值,但當控制傳遞迴調用過程時,不會保留更改的值。通過使用方法參數關鍵字,可以更改這種行為。paramsparams 關鍵字可以指定在參數數目可變處採用參數的方法參數。在方法聲明中的 params 關鍵字之後不允許任何其他參數,並且在方法聲明中只允許一個 params 關鍵字。
Time of Update: 2018-12-08
知識點 實值型別。實值型別是在棧中分配記憶體,在聲明時初始化才能使用,不能為null。 實值型別超出作用範圍系統自動釋放記憶體。 主要由兩類組成:結構,枚舉(enum),結構分為以下幾類:整型(Sbyte、Byte、Char、Short、Ushort、Int、Uint、Long、Ulong) 浮點型(Float、Double) decimal bool
Time of Update: 2018-12-08
C#調用c++dll檔案是一件很麻煩的事情,首先面臨的是資料類型轉換的問題,相信經常做c#開發的都和我一樣把學校的那點c++底子都忘光了吧(語言屬性類別)。網上有一大堆得轉換對應表,也有一大堆的轉換執行個體,但是都沒有強調一個更重要的問題,就是c#資料類型和c++資料類型占記憶體長度的對應關係。如果dll檔案中只包含一些基礎類型,那這個問題可能可以被忽略,但是如果是組合類別型(這個叫法也許不妥),如結構體、類類型等,在其中的成員變數的長度的申明正確與否將決定你對dll檔案調用的成敗。如有以下代碼
Time of Update: 2018-12-08
using System;using System.Collections.Generic;using System.Text;using System.Data;using System.Data.OleDb;using System.Runtime.InteropServices;using System.Windows.Forms;using iExcel = Microsoft.Office.Interop.Excel;namespace Excel.Readxls{ class
Time of Update: 2018-12-08
前言 由於音頻接收這塊的代碼和說明不多,就和功能一起寫了,Let's GO! ! 注意 本系列文章限於學習交流,注重過程,由於涉及公司,所以不提供原始碼下載,非常抱歉!!但是請大家放心,核心、實現以及其他能夠貼出來的代碼我都會貼出來,並且爭取盡所能的回答留言裡的每一個問題,感謝大家關注,歡迎交流 系列 1. C# 視頻監控系列(1):準備 2. C# 視頻監控系列(2):用戶端——封裝API 3. C# 視頻監控系列(3):
Time of Update: 2018-12-08
1.this.toolStrip1.Dock = DockStyle.Top;/// 菜單 2. 一。 private void timer1_Tick(object sender, EventArgs e) {//顯示當前系統時間 this.toolStripStatusLabel1.Text=
Time of Update: 2018-12-08
C++ C#=====================================WORD ushortDWORD uintUCHAR int/byte 大部分情況都可以使用int代替,而如果需要嚴格對齊的話則應該用bytebyte UCHAR* string/IntPtrunsigned char*
Time of Update: 2018-12-08
前言 偶爾的機會接觸視頻監控,一開始的也是無頭蒼蠅,買書,跑了幾趟中關村買裝置,找朋友幫忙接線,測試網路攝影機,總算是把海康SDK開發包裡面的樣本跑起來了!接下來又在源碼網站、用Google瘋狂的找代碼,不是VC++的就是Delphi的源碼(本人Delphi不會,VC++能看懂點點-_-#),最後算是找到了一個C#版開發的用戶端文章,結果運行出錯!跑到海康官方網站問也沒人鳥,怒了!!冷靜下來看內建的VC++用戶端代碼,看得出他也是調用的標準介面,只是使用VC++來調罷了,所以想乾脆直
Time of Update: 2018-12-08
一哥們問我一些字串的問題,找以前再csdn的文章,沒找到。google了一下表體(去掉原創兩個字),暈倒!!!大部分都變成了大家自己的原創。不過幸虧轉載的很多,才把這個找到。呵呵,趕緊做個記號。//獲得漢字的區位碼 byte[] array = new byte[2]; array = System.Text.Encoding.Default.GetBytes("啊"); int i1 = (short)(array[0] - ''\0''); int i2 =
Time of Update: 2018-12-08
我們用CBuilder3在n年前作的報表系統。今天同事發現,某個TForm在construture的時候,會出現access 記憶體位址的錯誤。然後跟蹤之,發現在MyForm::MyForm(TComponent* Owner):TForm(Owner)的時候出錯了,而這段代碼其實是空的。想了一會,開始開啟反組譯碼視窗(就是bcb自己帶的)。F8了幾次,發現最終是在TReader->Read***時候出錯的。這個時候開始後悔,自己彙編太差。我能看到是在根據classname來load
Time of Update: 2018-12-08
偶不懂PE格式,不懂strongname應該如何處理,所以,下面是一個非常笨的方法,假設有一個exe,我現在要感染它,因為上面的原因決定,我只能選擇一個迂迴的路線。把exe用ildasm搞成.il代碼,然後把我的il代碼加進去,然後ilasm重新編譯該il,呵呵。這樣做,需要被感染的機器安裝有ildasm(如果不裝sdk,沒這玩意兒)。簡單的例子:我想輸入hello,fqq!那麼寫一個最小的代碼,如下:using System;namespace DebugDemo{ public cla
Time of Update: 2018-12-08
其實就一句話,為啥C#只能用class name來訪問static method,而C++可以用instance和classname兩種方式來做?為什麼C#要這麼設計?請大家協助解答一下。 I had a C++ static and C# static method design problem. In C++, we can call the static method through class name or the class instance. For
Time of Update: 2018-12-08
1、定義var i = 5;var s = "Hello";var d = 1.0;var numbers = new int[] {1, 2, 3};var orders = new Dictionary<int,Order>();2、擴充的方法namespace Acme.Utilities{ public static class Extensions { public static int ToInt32(this string s) { return
Time of Update: 2018-12-08
先看這段C#代碼 public class C { public static void M() { Console.WriteLine("call in class C"); } } public class D : C { public new static void M() { Console.WriteLine("call in class D");
Time of Update: 2018-12-07
//C++11的<memory>中有一整套智能指標,//完全可以避免寫手動的delete代碼,//但是它預設使用delete刪除對象,//如果是數組對象,需要指定自訂的刪除方法,支援delete[]std::shared_ptr<int> p(new int[10], [](int* p){ delete[] p; });//或者使用helperstd::shared_ptr<int> p(new int[10],std::defau
Time of Update: 2018-12-07
藥物名稱:C語言資料結構學慣用單元測試主治:本品是基於CUnit編寫的、全部的、純C的資料結構(ADT)各種實現的單元測試。主治基礎不牢,水品增長緩慢。建議配合嚴蔚敏《資料結構》(C語言、第二版)一起使用,效果更佳。服用方法:平台:Eclipse with CDT + MinGW(GCC,Make),參考:http://www.cnblogs.com/yuandong/archive/2006/08/12/475287.html