這兩個都是我做助教的那個班的兩個同學完成的,覺得她們做得不錯,故貼出來共享。
第乙個同學的實現:
#include
#include
#include
class string
//求長度
char & operator [ ] ( int i ) //過載下標運算子
};string::string(char * s)
string::~string()
int * nature(string & p)
i++;
}while( p[ i ] == '*' )
m = i;
}return n ;
}int kmp( string & target , string & pat , int * n , int startindex )
int n ,k = 0; //n和k 用來記錄開始匹配成功的位置
while( i < target.strlen() )
while( pat[j] == '*')
if( j == pat.strlen() )
;#include
#include
//#include
#include"string.h"
#include
string::string()
string::string(char* s)
//析構函式destructor
string::~string()
char* string:: replace(char a,char b)
if( p.str[j]=='*')
*/cout< 第一種 匯出方式 extern c declspec dllexport int plus int x,int y extern c declspec dllexport int sub int x,int y extern c declspec dllexport int mul int x,in... 法一 公有靜態成員final域 public class elvis 優勢 api很容易知道這是乙個單例類,更簡單 注意 呼叫者可以借助accessbleobject.setaccssible方法通過反射機制呼叫私有構造器,因此如果想抵禦這種攻擊,可以修改構造器,讓它在被要求建第二個例項的時候丟擲異... 最開始auto ptr的成員變數主要有t ptr 和 bool owner,主要實現原理是在構造物件時賦予其管理空間的所有權,在拷貝或賦值中轉移空間的所有權,在析構函式中當 owner為true 擁有所有權 時來釋放所有權。template class my auto ptr templatemy ...C DLL匯出的兩種方式和鏈結的兩種方式
實現Singleton的兩種方式
auto ptr的兩種實現方式