不知道你們有沒有看過string類型變數的成員資料,在string變數中好像真正儲存字串的是一個叫_Ptr的指標,它指向string所儲存的字串首地址。當string變數被定義時,如果未初始化,_Ptr就是一個指向NULL的指標,而且_Ptr看起來像一個const
namespace refout參數{ class Program { static void Main(string[] args) { int age = 20; int age1 = 20; IncAge(ref age);//函數調用也要加ref IncAge1(out
// 三次貝塞爾.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <stdio.h>#include <iostream>#include <vector>#define NUM_STEPS 30 //越大,曲線越密,越逼近using namespace std;class CvPoint{public:float x;float
空格符和Null 字元是不一樣的,在ASCII裡面,空格(space)符號的ASCII碼是32,而Null 字元是0, 2個是完全不一樣的2個字元 Null 字元 一般來描述一個字串的結尾,其實是控制符的一種,但不能理解為沒有字元,應該理解為代表什麼都沒有的字元.好比斷行符號0x0A和換行0x0D雖然不顯示,但是也是控制字元的一種.(這些字元以前是用於印表機的,所以很多都沒有用了) 字串的概念:在C語言中,字串是指由若干個有效字元(其中包括字母、數字、
由於工程項目需要,要在全屏Form中加上鍵盤ESC的響應,實現的效果就是:全屏中press鍵盤上的Escape鍵,程式結束。原本覺得挺簡單的功能,卻搗鼓了一會兒才解決。大致總結一下步驟:首先在form的designer下加上 this.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.Form_KeyPress);然後寫響應函數 private void Form_KeyPress(object
很多初學C語言的人,一開始都會有求和以及求積的程式,如果用簡單的將輸入的數一個個加起來那樣是很繁瑣的,當然效率是高的,但是程式看起來非常不簡潔!如果你學慣用遞迴方式求解,你會發現一切都是那麼簡單!下面的例子就是用遞迴方式求和以及求積。#include<stdio.h> #include<stdlib.h> #define N 10 float g(float a[],int n); /*求和函數*/ float f(float a[],int n); /*求積函數*/
1、排序函數 void order(int* p1, int* p2){ if(*p1 > *p2){ int temp = *p1; *p1 = *p2; *p2 = temp; } } void sort (int *p , int len , int perLen , void (*pOrder)(void* , void*)){ char* pt = (char*)p;
7.1 C++為什麼要有自己的輸入輸出系統? C++的編譯系統對資料類型進行嚴格的檢查,凡是類型不正確的資料都不可能通過編譯。 C++中需要定義眾多的使用者自訂類型且能夠輸入輸出。 7.2 C++有哪4個預定義的流對象?他們分別與什麼具體裝置相關聯? 標準輸入資料流對象cin、標準輸出資料流對象cout、非緩衝型的標準出錯流對象cerr和緩衝型的標準出錯流對象clog。 cin對應標準輸入裝置
1、資料 記憶體中 變數 磁碟上 檔案2、把資料從其他的裝置搬到記憶體中 --- 輸入 --- 讀 把記憶體中的資料放到其他裝置中 --- 輸出 --- 寫3、流 物質的定向移動,輸入輸出資料流中是資料的定向移動 輸入資料流的源頭 : 檔案 目的地:記憶體 輸出資料流的源頭 : 記憶體 目的地:檔案4、標準輸出裝置 --- 顯示器 標準輸入裝置 --- 鍵盤 鍵盤 --- 記憶體 --- 顯示器 |
1、 本對象 子類對象 其他函數 private屬性 可見 不可見 不可見 protected屬性 可見 可見 不可見 public屬性 可見 可見 可見 public extends protected extends private extends 父類的private屬性 不能訪問
1、類型封裝 類 --> 對象 描述 : (1)屬性 (2)行為 ---屬性和行為是屬於類的 建立對象。2、建構函式 --- 初始化對象 (1)建構函式名字必須與類名一樣 (2)建構函式不能寫傳回型別 建構函式在建立對象時,系統自動調用 建構函式允許重載,按使用者要求,適應多種情況 當類中一個建構函式都沒有的時候,系統提供預設無參的建構函式
1、%ldd 可執行檔的名字; ---可查看串連庫2、C++嚴格區分大小寫,變數命名只能使用字母,數字,或底線,第一個字母必須使用字母或底線3、float單精確度,double雙精確度 sizeof(int)---返回int在記憶體中占的大小 size(bool)=1 size(char)=1 size(short)=2 size(int)=4 size(long)=4 size(float)=4
1.1 什麼是物件導向程式設計?物件導向程式設計是一種新的程式設計範型.這種範型的主要特徵是:程式=對象+訊息物件導向程式的基本元素是對象。主要結構特點是:第一, 程式一般由類的定義和類的使用兩部分組成;第二, 程式中的一切操作都是通過向對象發送訊息來實現的。 1.2
1、演算法 脫離具體的語言 有窮性 --- 在保證執行有限步驟之後確定能夠結束 確切性 --- 每條語句具體幹什麼 輸入輸出 --- 所有的演算法都有輸出,列印螢幕,寫檔案,寫DB2、快速排序法 資料個數超過一個,任選其中一個資料作為分界值,把其他資料按大小關係分為2組,分界值在中間 對兩組資料實行遞迴重組View Code //快速排序演算法,效率最高的排序演算法。第一個參數表示數組首地址,第二個參數表示數組起始位置,第三個參數表示結束位置 void
1、數組是自動分配空間,指標要手工分配空間(int *p = new int;)2、在Unix上,程式出現段錯誤的時候,系統會產生core 檔案,會把出現錯誤的那一刻的程式鏡像儲存在此檔案中3、結構的成員變數出現數組: struct Account{ long id ; //char name[ 50 ] ; //char password[ 10 ] ; char * pname ; char *
1、對檔案的分類 (1)文字檔:每個位元組都是有效可顯示的ASCII碼 ,getline() , >> (2)二進位檔案:位元組是連續的,不能用vi , more查看檔案內容,read按位元組數讀取 , write 100 是整數的100,佔4個位元組 “100”是字元數組,佔3個位元組2、異常 (1)人為錯誤:由於程式員編碼不當 客觀錯誤:不能避免的錯誤
1、拷貝建構函式和運算子多載 (1)當類的成員變數中出現指標類型的時候,需要動態申請空間,這樣就需要解決淺拷貝的問題 在聲明對象的同時用另一個對象為其賦值,會調用拷貝建構函式。 系統提供的預設拷貝建構函式,是淺拷貝,我們可以自己寫一個拷貝建構函式,把指標指向的變數也拷貝過去 (2)類中的成員變數出現指標類型,當兩個對象都建立出來了以後,相互賦值的時候,就需要重載賦值運算子號 手工為指標指向的變數賦值2、其他的運算子號重載
1、類和對象 類就是對對象的描述,主要從屬性和行為兩個方面描述。 對於屬性一般作成private , 行為作為public 函數 (1)建構函式,初始化所有的成員變數,系統自動調用,可以重載 (2)解構函式,在對象生命週期結束的時候自動被調用調用,不準重載 建構函式和解構函式都是系統自動調用的,解構函式可以通過對象調用 A a; a.A(); //error
轉自:http://blog.csdn.net/fengxinziyang/article/details/5909237 (PS:我看的這本書《Visual C++從初學到精通》說結構體也可以繼承和被繼承,也可以有虛函數)區別:結構是一種用關鍵字struct聲明的自訂資料類型。與類相似,也可以包含建構函式,常數,欄位,方法,屬性,索引器,運算子和巢狀型別等,不過,結構是實值型別。1.結構的建構函式和類的建構函式不同。
1、 程式 —— 可執行檔,人發送給電腦的一組指令。 硬體指令是二進位,方便與數字電路和指令集轉換。2、 我們學的是符合ANSI規範的標準C++,有可移植性3、 進位:十進位 -> 二進位:除2取餘 88 -> 0101 1000 二進位 -> 十進位 : 各個位與權重的乘機,之後的總和 0101 1000 -> 8+16+64 -> 88 十進位 -> 十六進位 :除16取餘 88 -> 0x584、 1