关于const做了一个小实验:
#include <iostream>
#include <string>
using namespace std;
void swap(int& a,int& b)
{
int temp;
temp = a;
a = b;
b = temp;
}
int main()
{
int a = 100;
long b = 200L;
const int& c = 200; //可以,但是int& c = 200;不行 。常数需要用常量引用。为200建立了一个临时的变量。C为这个临时变量的引用。
const int& d = a + 200; //可以,但是int& d = a+200;不行 。 为a+200建立了一个临时的变量。d为这个临时变量的引用。
swap(a,b); //可以交换a,b.虽然b的类型不匹配但不产生临时变量。像swap(a,200);不行;swap(a,b+200);不行
cout << a <<"----" << b << "---" << c <<endl;
return 0;
}
4253

被折叠的 条评论
为什么被折叠?



