This commit is contained in:
Light-City
2020-04-06 00:57:02 +08:00
parent f97c156cc4
commit a4d828bb4c
120 changed files with 4413 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
#include <iostream>
using namespace std;
class Time{
private:
int hh,mm,ss;
public:
Time(int h=0,int m=0,int s=0):hh(h),mm(m),ss(s){}
void operator()(int h,int m,int s) {
hh=h;
mm=m;
ss=s;
}
void ShowTime(){
cout<<hh<<":"<<mm<<":"<<ss<<endl;
}
};
int main(){
Time t1(12,10,11);
t1.ShowTime();
t1.operator()(23,20,34);
t1.ShowTime();
t1(10,10,10);
t1.ShowTime();
system("pause");
}

View File

@@ -0,0 +1,16 @@
//<2F><><EFBFBD><EFBFBD>ch.cppi
#include <iostream>
using namespace std;
class X{
public:
X &operator = (const X & x)
{cout << "a:"; return *this;};
};
int main ()
{
X obj1, obj2, obj3;
obj1 = obj2; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ء<EFBFBD>=<3D><>
obj1.operator= (obj2); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ء<EFBFBD>=<3D><>
obj1 = obj2 = obj3; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ء<EFBFBD>=<3D><>
system("pause");
}

View File

@@ -0,0 +1,21 @@
#include<iostream>
using namespace std;
class X
{public:
int operator() (int i=0)
{ cout << "X::operator(" << i << ")" << endl; return i; };
int operator() (int i, int j)
{ cout << "X::operator(" << i << "," << j << ")" << endl;
return i; };
int operator[] (int i)
{ cout << "X::operator[" << i << "]" << endl; return i; };
int operator[] (char * cp)
{ cout << "X::operator[" << cp << "]" << endl; return 0; };
};
int main (void)
{ X obj; int i = obj (obj (1), 2);
int a = obj[i]; int b = obj["abcd"];
cout<<"a="<<a<<endl;
cout<<"b="<<b<<endl;
system("pause");
}

View File

@@ -0,0 +1,50 @@
//Eg8-9.cpp
#include <iostream>
#include <cstring>
using namespace std;
struct Person{ //ְ<><D6B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>Ľṹ
double salary;
char *name;
};
class SalaryManaege{
Person *employ; //<2F><><EFBFBD><EFBFBD>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int max; //<2F><><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><C2B1>Ͻ<EFBFBD>
int n; //<2F><><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ʵ<EFBFBD><CAB5>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public:
SalaryManaege(int Max=0){
max=Max;
n=0;
employ=new Person[max];
}
double &operator[](char *Name) { //<2F><><EFBFBD><EFBFBD>[]<5D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Person *p;
for(p=employ;p<employ+n;p++)
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD>
if(strcmp(p->name,Name)==0)
return p->salary;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
p=employ + n++;
p->name=new char[strlen(Name)+1];
strcpy(p->name,Name);
p->salary=0;
return p->salary;
}
void display(){
for(int i=0;i<n;i++)
cout<<employ[i].name<<" "<<employ[i].salary<<endl;
}
};
int main(){
SalaryManaege s(3);
s["<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"]=2188.88;
s["<EFBFBD><EFBFBD>˹"]=1230.07;
s["<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"]=3200.97;
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\t"<<s["<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"]<<endl; cout<<"<EFBFBD><EFBFBD>˹\t"<<s["<EFBFBD><EFBFBD>˹"]<<endl;
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\t"<<s["<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"]<<endl;
cout<<"-------<2D><>Ϊdisplay<61><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD>--------\n\n";
s.display();
system("pause");
}

View File

@@ -0,0 +1,145 @@
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>C++<2B><>һ<EFBFBD><D2BB>ǿ<EFBFBD><C7BF><EFBFBD><EFBFBD><EFBFBD>ܡ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD><D8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չC++<2B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><C4B9>ܣ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD>ܹ<EFBFBD><DCB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>ԺͿɶ<CDBF><C9B6>ԡ<EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һԪ<D2BB><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>++<2B><>--<2D><>[]<5D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, thisָ<73><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><<<EFBFBD><EFBFBD>>><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD>Ԫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
1<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
aa@bb <20>ɽ<EFBFBD><C9BD>ͳ<EFBFBD> aa.operator@(bb)
<20><><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD> operator@(aa,bb)
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD>,<2C>Ͱ<EFBFBD><CDB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؽ<EFBFBD><D8BD><EFBFBD>
```c++
class X{
public:
void operator+(int);
X(int);
};
void operator+(X,X);
void operator+(X,double);
```
2<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
<EFBFBD><EFBFBD>1<EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD>̬<EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>ʲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>thisָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD>ݵġ<EFBFBD>
```c++
class Complex{
double real,image;
public:
Complex operator+(Complex b){<7B><><EFBFBD><EFBFBD>}
......
};
```
<EFBFBD><EFBFBD>2<EFBFBD><EFBFBD> <20><>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Complex<EFBFBD><EFBFBD><EFBFBD>ļӷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD>£<EFBFBD>
```c++
class Complex{
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
friend Complex operator+(Complex a,Complex b); //<2F><><EFBFBD><EFBFBD>
//......
};
Complex operator+(Complex a,Complex b){<7B><><EFBFBD><EFBFBD>} //<2F><><EFBFBD><EFBFBD>
```
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һԪ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
1<EFBFBD><EFBFBD>һԪ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
һԪ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><EFBFBD>Ҫһ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>++<2B><><EFBFBD>ȡ<EFBFBD>
2<EFBFBD><EFBFBD>һԪ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽΪ<EFBFBD><EFBFBD>
@a <20><> a@ //<2F><>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
a.operator@() // <20><>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>һԪ<D2BB><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>@
<EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>@<40><><EFBFBD><EFBFBD>һԪ<D2BB><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>a<EFBFBD><61><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@a<><61><EFBFBD><EFBFBD>ǰ׺һԪ<D2BB><D4AA><EFBFBD><EFBFBD>硰++a<><61><EFBFBD><EFBFBD>
a@<40><>ʾ<EFBFBD><CABE>׺<EFBFBD><D7BA><EFBFBD><EFBFBD>硰a++<2B><><EFBFBD><EFBFBD>
3<EFBFBD><EFBFBD>@a<><61><EFBFBD><EFBFBD>C++<2B><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ֮һ
a.operator@()
operator@(a)
4.һԪ<D2BB><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD>£<EFBFBD>
```c++
class X{
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
T operator@(){<7B><><EFBFBD><EFBFBD>};
}
```
T<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>@<40>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͡<EFBFBD><CDA1><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>һԪ<D2BB><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>в<EFBFBD><D0B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>thisָ<EFBFBD>
5.ǰ<><C7B0><EFBFBD><EFBFBD>(<28><>)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>)
C++<2B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>int <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>ʽ
```c++
//ǰ׺
operator -- ();
operator -- (X & x);
//<2F><>׺
operator -- (int);
operator -- (X & x, int);
```
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>=
1<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>=<3D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ô<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ֻ<EFBFBD><EFBFBD><EFBFBD>ó<EFBFBD>Ա<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>û<EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><EFBFBD>ð汾<EFBFBD><EFBFBD><EFBFBD><EFBFBD>bit-by-bit<69><74><EFBFBD><EFBFBD>
<EFBFBD>ġ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[]
1<EFBFBD><EFBFBD>[ ]<5D><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD>£<EFBFBD>
```c++
class X{
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
X& operator[](int n);
};
```
2<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[]<5D><>Ҫע<D2AA><D7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- []<5D><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>thisָ<73><EFBFBD>ݵģ<DDB5><C4A3><EFBFBD>2<EFBFBD><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>
- <20><><EFBFBD><EFBFBD>[]<5D>ȿ<EFBFBD><C8BF>Գ<EFBFBD><D4B3><EFBFBD><EFBFBD>ڸ<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>=<3D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>Գ<EFBFBD><D4B3><EFBFBD><EFBFBD>ڸ<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>=<3D><><EFBFBD><EFBFBD><EFBFBD>ұߣ<D2B1><DFA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[]ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>á<EFBFBD>
- **[]ֻ<>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD>ķǾ<C4B7>̬<EFBFBD><CCAC>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>**<2A><>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>( )
1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>( )<29>Ǻ<EFBFBD><C7BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD>ء<EFBFBD><D8A1><EFBFBD>ֻ<EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD>ij<EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>( )<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD>£<EFBFBD>
```c++
class X{
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
X& operator( )(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>);
}<7D><>
```
<EFBFBD><EFBFBD><EFBFBD>еIJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>԰<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
3<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>( )<29>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD>£<EFBFBD>
X Obj; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Obj()(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ1
Obj(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ2

View File

@@ -0,0 +1,76 @@
//<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Time<6D><65><EFBFBD><EFBFBD><EFBFBD>ܹ<EFBFBD><DCB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#include<iostream>
using namespace std;
class Time{
private:
int hour,minute,second;
public:
Time(int h,int m, int s);
Time operator++();
//<2F><>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>
friend Time operator--(Time &t);
void display();
};
Time::Time(int h, int m, int s){
hour=h;
minute=m;
second=s;
if (hour>=24)
hour=0;
if (minute>=60)
minute=0;
if (second>=60)
second=0;
}
Time Time::operator++(){
++second;
if (second>=60){
second=0;
++minute;
if(minute>=60){
minute=0;
++hour;
if(hour>=24)
hour=0;
}
}
return *this;
}
Time operator--(Time &t){
--t.second;
if (t.second>=60){
t.second=0;
++t.minute;
if(t.minute>=60){
t.minute=0;
++t.hour;
if(t.hour>=24)
t.hour=0;
}
}
return t;
}
void Time::display(){
cout<<hour<<":"<<minute<<":"<<second<<endl;
}
int main(int argc, char const *argv[])
{
Time t1(23,59,59);
t1.display();
++t1; //<2F><>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
t1.display();
t1.operator++(); //<2F><>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
t1.display();
Time t2(24,60,60);
t2.display();
++t2;
t2.display();
--t2;
t2.display();
system("pause");
return 0;
}

View File

@@ -0,0 +1,47 @@
//<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>counter<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>ּ<EFBFBD><D6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD>ʵ<EFBFBD>ּ<EFBFBD><D6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD>
#include<iostream>
using namespace std;
class Counter{
private:
int n;
public:
Counter(int i=0):n(i){};
Counter operator++();
Counter operator++(int);
friend Counter operator--(Counter &c);
friend Counter operator--(Counter &c,int);
void display();
};
Counter Counter::operator++(){
++n;
return *this;
}
Counter Counter::operator++(int){
n++;
return *this;
}
Counter operator--(Counter &c){
--c.n;
return c;
}
Counter operator--(Counter &c,int){
c.n--;
return c;
}
void Counter::display(){
cout<<"counter number="<<n<<endl;
}
int main(int argc, char const *argv[])
{
Counter a;
++a;
a.display();
a++;
a.display();
--a;
a.display();
a--;
a.display();
system("pause");
return 0;
}

View File

@@ -0,0 +1,67 @@
//<2F>и<EFBFBD><D0B8><EFBFBD><EFBFBD><EFBFBD>Complex<65><78><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>ļӡ<C4BC><D3A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD><CBA1><EFBFBD><EFBFBD>ȸ<EFBFBD><C8B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#include<iostream>
using namespace std;
class Complex {
private:
double r,i;
public:
Complex(double R=0,double I=0):r(R),i(I){};
Complex operator+(Complex b);
Complex operator-(Complex b);
Complex operator*(Complex b);
Complex operator/(Complex b);
void display();
};
Complex Complex::operator +(Complex b)
{
return Complex(r+b.r,i+b.i);
}
Complex Complex::operator -(Complex b)
{
return Complex(r-b.r,i-b.i);
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>
Complex Complex::operator *(Complex b)
{
Complex t;
t.r=r*b.r-i*b.i;
t.i=r*b.i+i*b.r;
return t;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Complex Complex::operator /(Complex b) {
Complex t;
double x;
x=1/(b.r*b.r+b.i*b.i);
t.r=x*(r*b.r+i*b.i);
t.i=x*(i*b.r-r*b.i);
return t;
}
void Complex::display(){
cout<<r;
if (i>0) cout<<"+";
if (i!=0) cout<<i<<"i"<<endl;
//}display();
};
int main(void) {
Complex c1(1,2),c2(3,4),c3,c4,c5,c6;
Complex a,b(2,3);
a=b+2; //<2F><>ȷ
// a=2+b; //<2F><><EFBFBD><EFBFBD>
a.display();
c3=c1+c2;
c4=c1-c2;
c5=c1*c2;
c6=c1/c2;
c1.display();
c2.display();
c3.display();
c4.display();
c5.display();
c6.display();
system("pause");
return 0;
}

View File

@@ -0,0 +1,84 @@
/*
<EFBFBD><EFBFBD>C++<2B>ı<EFBFBD>׼<EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD>std<74><64>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD>˸<EFBFBD><CBB8><EFBFBD><EFBFBD><EFBFBD>Complex<65><78>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Complex<EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>+<2B><>-<2D><>*<2A><>/<2F><>
<EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD>using namespace std<74><64>std<74><64><EFBFBD>ֿռ<D6BF><D5BC><EFBFBD><EFBFBD><EFBFBD><EBB1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD>򱾳<EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>Complex<EFBFBD><EFBFBD><EFBFBD><EFBFBD>std<EFBFBD><EFBFBD><EFBFBD>ֿռ<EFBFBD><EFBFBD>е<EFBFBD>Complex<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
/*
<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>ҿ<EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+<2B><>-<2D><>*<2A><>/ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷dz<EFBFBD>Ա<EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>֡<EFBFBD>
*/
//<2F><><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2+b<><62><EFBFBD>
#include<iostream>
class Complex{
private:
double r,i;
public:
Complex(double R=0,double I=0):r(R),i(I){};
friend Complex operator+(Complex a, Complex b);
friend Complex operator-(Complex a, Complex b);
friend Complex operator*(Complex a, Complex b);
friend Complex operator/(Complex a, Complex b);
friend Complex operator+(Complex a,double b){
return Complex(a.r+b,a.i);
}
friend Complex operator+(double a,Complex b){
return Complex(a+b.r,b.i);
}
void display();
};
Complex operator+(Complex a, Complex b){
return Complex(a.r+b.r,a.i+b.i);
}
Complex operator-(Complex a, Complex b){
return Complex(a.r-b.r,a.i-b.i);
}
Complex operator*(Complex a, Complex b){
Complex t;
t.r = a.r*b.r-a.i*b.i;
t.i = a.r*b.i+a.i*b.r;
}
Complex operator/(Complex a, Complex b){
Complex t;
double x;
x = 1/(b.r*b.r+b.i*b.i);
t.r = x*(a.r*b.r+a.i*b.i);
t.i = x*(a.i*b.r-a.r*b.i);
return t;
}
void Complex::display(){
std::cout<<r;
if(i>0)
std::cout<<"+";
if(i!=0)
std::cout<<i<<"i"<<std::endl;
}
int main(void) {
Complex c1(1,2),c2(3,4),c3,c4,c5,c6;
Complex a,b(2,3);
Complex a1=b+2;
Complex a2=2+b;
a1.display();
a2.display();
c3=c1+c2;
c4=c1-c2;
c5=c1*c2;
c6=c1/c2;
c1.display();
c2.display();
c3.display();
c4.display();
c5.display();
c6.display();
system("pause");
return 0;
}

View File

@@ -0,0 +1,70 @@
//<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>String<6E><67>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBA1A2><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD>+=<3D><>==<3D><>!=<3D><><<3C><>><3E><>>=<3D><>[ ]<5D><><EFBFBD><EFBFBD><EFBFBD>
#include <iostream>
#include <cstring>
using namespace std;
class String {
private:
int length; //<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
char *sPtr; //<2F><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
void setString( const char *s2);
friend ostream &operator<<(ostream &os, const String &s);
friend istream &operator>>(istream &is, String &s); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public:
String( const char * = "" );
const String &operator=(const String &R); //<2F><><EFBFBD>ظ<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> =
const String &operator+=(const String &R); //<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> +=
bool operator==(const String &R); //<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȱȽ<C8B1> ==
bool operator!=(const String &R); //<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2>ȱȽ<C8B1> !=
bool operator!() ; //<2F>ж<EFBFBD><D0B6>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>Ƿ<EFBFBD>Ϊ<EFBFBD><CEAA>
bool operator<(const String &R) const; //<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD>ڱȽ<DAB1> <
bool operator>(const String &R); //<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4>ڱȽ<DAB1> >
bool operator>=(const String &R); //<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4>ڵ<EFBFBD><DAB5>ڱȽ<DAB1>
char &operator[](int); //<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><C2B1><EFBFBD><EFBFBD><EFBFBD>
~String();
};
const String &String::operator+=(const String &R) {
char *temp = sPtr;
length += R.length;
sPtr = new char[length+1];
strcpy(sPtr,temp );
strcat(sPtr,R.sPtr );
delete [] temp;
return *this;
}
bool String::operator==(const String &R){return strcmp(sPtr,R.sPtr)==0;}
bool String::operator!=(const String & R){return !(*this==R);}
bool String::operator!(){return length ==0;}
bool String::operator<(const String &R)const{return strcmp(sPtr,R.sPtr)<0;}
bool String::operator>(const String &R){return R<*this;}
bool String::operator>=(const String &R){return !(*this<R);}
char &String::operator[](int subscript){return sPtr[subscript];}
int main(){
String s1("happy"),s2("new year"),s3;
cout << "s1 is " << s1 << "\ns2 is " << s2 << "\ns3 is " << s3
<< "\n<EFBFBD>Ƚ<EFBFBD>s2<EFBFBD><EFBFBD>s1:"
<< "\ns2 ==s1<73><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD> " << ( s2 == s1 ? "true" : "false")
<< "\ns2 != s1<73><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD> " << ( s2 != s1 ? "true" : "false")
<< "\ns2 > s1<73><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD> " << ( s2 > s1 ? "true" : "false")
<< "\ns2 < s1<73><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD> " << ( s2 < s1 ? "true" : "false")
<< "\ns2 >= s1<73><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD> " << ( s2 >= s1 ? "true" : "false");
cout << "\n\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD>s3<EFBFBD>Ƿ<EFBFBD>Ϊ<EFBFBD><EFBFBD>: ";
if (!s3){
cout << "s3<EFBFBD>ǿմ<EFBFBD>"<<endl; //L3
cout<<"<EFBFBD><EFBFBD>s1<EFBFBD><EFBFBD><EFBFBD><EFBFBD>s3<EFBFBD>Ľ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǣ<EFBFBD>";
s3 = s1;
cout << "s3=" << s3 << "\n"; //L5
}
cout << "s1 += s2 <20>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD>ǣ<EFBFBD>s1="; //L6
s1 += s2;
cout << s1; //L7
cout << "\ns1 += to you <20>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD>ǣ<EFBFBD>"; //L8
s1 += " to you";
cout << "s1 = " << s1 <<endl; //L9
s1[0] = 'H';
s1[6] = 'N';
s1[10] = 'Y';
cout << "s1 = " << s1 << "\n"; //L10
system("pause");
return 0;
}