?? 練習(xí).txt
字號(hào):
20.1
#include <iostream.h>
#include <string.h>
template<class T> T min(T a,T b)
{
return a<b?a:b;
}
char* min(char* a,char* b)
{
return (strcmp(a,b)<0?a:b);
}
void main()
{
cout<<"Min(\"Hello\",\"Gold\") is "
<<min("Hello","Gold")<<endl;
cout<<"Min(5,75) is "
<<min(5,75)<<endl;
}
20.2
//-------stack.prj-------//
//************************
//** main.cpp **
//************************
#include "stack.h"
void main()
{
int size=100;
Stack<int> stack(size);
stack.display();
stack.Push(5);
stack.Push(10);
stack.display();
}
//***********************
//** stack.h **
//***********************
#include <iostream.h>
#include <stdlib.h>
template<class T> class Stack
{
public:
Stack(const int s)
{
SIZE=s;
tos=0;
stack=new T[SIZE];
for(int i=0;i<SIZE;i++)
stack[i]=0;
cout<<"end construction."<<endl;
}
~Stack()
{
delete []stack;
}
void Push(T t);
T Pop();
void display()
{
if(tos==0)
{
cout<<"empty stack."<<endl;
return;
}
int i=0;
for(;i<tos;i++)
cout<<stack[i]<<",";
cout<<endl<<"end display."<<endl;
}
private:
int SIZE;
T* stack;
int tos;
};
template<class T>
void Stack<T>::Push(T t)
{
cout<<"push:"<<t<<endl;
stack[tos]=t;
tos++;
if(tos>99)
{
cout<<"stack overflow."<<endl;
exit(1);
}
}
template<class T>
T Stack<T>::Pop()
{
cout<<"pop:"<<stack[tos]<<endl;
T temp=stack[tos];
stack[tos]=0;
tos--;
if(stack<0)
{
cout<<"stack crash."<<endl;
exit(1);
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -