類有成員變數和成員函式。而函式中,不是任何乙個類的成員的函式,就是非成員函式。例如:
class a; // 這個就是成員函式。
void f2(); // 這個也是成員函式宣告,其實現在類的外部。};
void a::f2(){} // 這個是成員函式的實現。
void f3(){}; // 這個就是非成員函式,它不屬於a,也不屬於任何一起其他的類。
成員函式和非成員函式的乙個最大的區別在於成員函式可以是虛擬的,而非成員函式不行。
成員函式和非成員函式最大的區別在於成員函式可以是虛擬的而非成員函式不行。
成員函式的優勢是能夠方便的進行動態繫結,實現多型。
說明乙個函式為乙個類的友元函式則該函式可以訪問此類的私有資料和方法。
成員函式 非成員函式和友元函式
成員函式和非成員函式最大的區別在於成員函式可以是虛擬的而非成員函式不行。所以,如果有個函式必須進行動態繫結,就要採用虛函式,而虛函式必定是某個類的成員函式。如果函式不必是虛擬的,情況就稍微複雜一點。看下面表示有理數的乙個類 class rational 這是乙個沒有一點用處的類 介面最小,但遠不夠完...
分清成員函式,非成員函式和友元函式
成員函式和非成員函式最大的區別在於成員函式可以是虛擬的而非成員函式不行。所以,如果有個函式必須進行動態繫結 見條款38 就要採用虛函式,而虛函式必定是某個類的成員函式。關於這一點就這麼簡單。如果函式不必是虛擬的,情況就稍微複雜一點。看下面表示有理數的乙個類 class rational 這是乙個沒有...
分清成員函式,非成員函式和友元函式
成員函式和非成員函式最大的區別在於成員函式可以是虛擬的而非成員函式不行。所以,如果有個函式必須進行動態繫結 見條款38 就要採用虛函式,而虛函式必定是某個類的成員函式。關於這一點就這麼簡單。如果函式不必是虛擬的,情況就稍微複雜一點。看下面表示有理數的乙個類 class rational 這是乙個沒有...