過一下基礎東西,學習一下不常用的特性
命名引數&可選引數
private void start()
private int add(int x, int y, int z)
private int add2(int x, int y = 2, int z = 3)
可空型別int x = 1;
int? y = null;//定義可空型別變數
//int -> ?
int? z = x;
//? -> int
int a = y.hasvalue ? y.value : -1;
int a = y ?? -1;
int? y = x ?? 1000;//使用合併運算子,當變數x為null時,預設賦值1000
建構函式
建構函式初始化器:
public class myclass
}private int _x;
private int _y;
private string _log;
private myclass(int x, int y, string log)
//if
private myclass(int x) : this(x, 1, "myclass")
//else
private myclass(int x)
}
lambda表示式
學習多用鴨 好有用
public struct mystruct
public int y
public mystruct(int x,int y)
//if
public int add => x + y;
//else
public int add()
}
值和引用型別//結構體
public struct my1
public my1(int x)
}//common
private void change(my1 m)
//ref
private void changeref(ref my1 m)
//if
my1 my1 = new my1(1);
my1.x = 2; //2 改變
//elseif
my1 my1 = new my1(1);
change(my1); //1 不變
//else
my1 my1 = new my1(1);
changeref(ref my1); //2改變
//類
public class my2
public my2(int x)
}//common
private void change(my1 m)
//ref
private void changeref(ref my2 m)
//if
my2 my2 = new my2(1);
change(my2); //2
//elseif
my2 my2 = new my2(1);
changeref(ref my2); //3 m被分配了乙個新的物件,即new my2(3),m指向的也就是這個物件的值了
c 高階程式設計
std normal distributiondis1 0,1 std default random engine random time null for i 0 i 10 i std cout這個乙個正態分佈函式,mean of the distribution its expected val...
C 高階程式設計
1.檔案操作 目錄中所有檔案提取 2.移動建構函式 拷貝建構函式 3.錯誤報錯以及修改措施 3.1 error c2662 eg const crvpairid cidele getid void 不能將 this 指標從 const cidele 轉換為 cidele 原因是 getid void...
C 高階程式設計 抽象
在 c 中,我們使用訪問標籤來定義類的抽象介面。乙個類可以包含零個或多個訪問標籤 使用公共標籤定義的成員都可以訪問該程式的所有部分。乙個型別的資料抽象檢視是由它的公共成員來定義的。使用私有標籤定義的成員無法訪問到使用類的 私有部分對使用型別的 隱藏了實現細節。訪問標籤出現的頻率沒有限制。每個訪問標籤...