#include #include /*
c實現cpp中的 set get 方法的許可權控制
flag = 0 有許可權 public、flag = 1 無許可權 private
*/static int *p_id = null; // 把資料隱蔽的存起來、不一定非要放在靜態區、cpp一般放在堆區。
static char *p_name = null;
// 定義乙個學生結構體
struct student ;
//set
void setid(struct student *p_stu, int flag, int newid)
}// get
int getid(struct student *p_stu, int flag) }}
// ----------------- name
//set
void setname(struct student *p_stu, int flag, char * newname)
}// get
char * getname(struct student *p_stu, int flag) }}
// 列印
void print(struct student *p_stu , int flag)
}void main()
CPP 封裝 繼承
類的三方法 封裝,繼承,多型。封裝 使用一整套方法去建立乙個新的型別,這叫類的封裝。繼承 從乙個現有的型別基礎上,稍作改動,得到乙個新的型別的方法,叫類的繼承。多型 當有幾個不同的子類物件時,物件呼叫的函式會依據物件型別來呼叫相應型別的成員函式。1.繼承的主要目的是為了 復用。建立子類物件時,先建立...
堆排序,cpp實現
include using namespace std void swap int a,int b 初始建堆,實為對孩子所在列的插入排序 void buildheap int a,int length 在每次刪除頂部元素後恢復堆,本質上從頂部開始,和左右孩子較大的孩子交換,一直到不能交換為止,時間效...
libxml2 xsd校驗功能的cpp封裝
一般xml解析可以考慮用pugixml庫,只有 檔案,沒有庫。xsd校驗一般可以用libxml2這種大型庫。最早還用過另外的乙個xml大型庫,忘了名字,速度比libxml2快點,但用了一段時間後,發現它不支援部分xsd語法 xmlspy軟體能檢測出的錯誤,它不能檢測 所以改用較慢的libxml2庫 ...