????2???????β?
????1?????????????????????????????????????????????????????????????????βε??????????????????????????????????????????????á?

 

void swap(int& v1?? int& v2)
{
int temp = v2;
v2 = v1;
v1 = temp;
}
int main()
{
int a = 10??b = 20;
swap(a??b);
return 0;
}

????????????swap???v1??v2???????a??b????????????
????2?????е????????????????????????????????????βΣ???????????????ε?????????????????Ч??????????????Щ???????????????????????????β???????????????????????δ?????????????????const??????βΡ?????????????ж????????????????????????????????????????????????????????const????????βΡ?
????bool isLonger(const string &s1?? const string &s2)
????{
????return s1.size() > s2.size();
????}
????????????????????βε?Ω?????????????????????????βζ????const???á?
????3????????????βκ??????????????????
?????????const???????λ???????????÷?const?????βκ???????????????????????????ε???????????
??????const?????β????????????????const?????????
????4?????????????????
??????????????????

 

void swap(int* &v1?? int* &v2)
{
int* temp = v2;
v2 = v1;
v1 = temp;
}
int main()
{
int a = 10??b = 20;
int* p1 = &a?? *p2 = &b;
swap(p1??p2);
return 0;
}

?????????????????????a??b????????????????p1??p2?????????p1?????b????p2?????a??
????3????????????β?
????1??vector????????????βΣ??????????????????β???????????????????β???????????????C++?????????????????????????????????????????????????
????2???????βΣ????????鯔?????????????????д??????????βκ???????????????????????????????????????顣????????????????????????????????ú?????β?????ε?????????

 

void printValues(int (&ar)[10]);
int main()
{
int i = 0?? j[2] = { 0?? 1 };
int k[10] = {0??1??2??3??4??5??6??7??8??9};
printValues(i);  //error int???????? int(&)[10]
printValues(j);  //error int[2] ???????? int(&)[10]
printValues(k);   // ok
return 0;
}

??????????????????
????1????з????
?????????????з????????????????C++????????????????????????βΡ????????????????return??????????return???????????ж???С?
????2???????????????
???????????????????????????????????????????????????????
????3??????????
?????????????????????????????и??????????????????????????
?????????????????????£???????????????????????????????????????????壬?????????????????????ν??????????????????????????????????????????
???????????????
????????????????????е?????????????????????????????ββ?????????????????
????1?????????????????????????
??????Щ????????????βΣ?????????????????????е?????????????????

 

typedef double newDouble;
int func(double i);
int func(newDouble i);  // ?????????
int func1(int?? int = 1); //???????????
int func1(int ??int);
int func2(int);
int func2(const int);  //??????????????β???cosnt??????????????

????2??????????????
??????????????????????????????????????????????????????????????????????????????????????????????????????????????????
????void print(int);
????int main()
????{
????void print(double);
????print(42);
????return 0;
????}
????????????У???????void print(double)?????????42??int???
????3???????????????????
???????????????????????????????????????????????????????????????????????????????????????????
????void f();  // 1
????void f(int);// 2
????void f(double);// 3
????void f(int?? int);// 4
????void f(double?? double);// 5
?????????????????????
???????????????f(4.2)???????????????????????????????????????????????5????????????
????????????????е????
????????????2???????????????β?????????θ??????????????????ε??????????????????????????????????????????β???????????????????f(4.2)????????1??4??5???????????2??3??????2?????????????????????????
???????????????????
??????????????????????2??3?????????2???????????????????3?????????
???????????????????f(42??4.2)??????????????????????????????
????????????????????????????????????????????6??????void f(double??int =1);????????f(4.2)????ж??????
???????????????????β??????const??????????const???????????????
????bool isLonger(const string &s1?? const string &s2)
????{
????return s1.size() > s2.size();
????}