/*
#define PI 3.14
class MyCircle{
// 属性(权限访问修饰符)
private:
double r;
double s;
public:
void setR(double r){
this->r = r;
};
// 获取面积
double getS(){
return PI * r * r;
};
};
int main(){
MyCircle c1;
c1.setR(4);
cout<<"圆的面积:"<<c1.getS()<<endl;
return 0;
}
*/
/*
// 结构体,和类类似
struct MyTeacher{
public:
string name ;
int age;
public:
void say(){
cout<<this->name<<":"<<this->age<<"岁"<<endl;
}
};
int main(){
MyTeacher t1;
t1.name = "libai";
t1.age = 20;
t1.say();
return 0;
};
*/
/*
// 布尔值
int main(){
bool isbool = false; // i > 0 表示true
cout<<isbool<<endl;
int a = 10, b = 20;
int c = (a>b)?a:b; // 三元表达式
cout<<c<<endl;
((a>b)?a:b) = 30; // 在c++中 三元运算符可以作为左边的值
cout<<b<<endl;
return 0;
}
*/
// 引用
/*
int main(){
// 变量名: 门牌号(内存空间0x000001的别名,可不可以叫多个名字)
int a = 10;
// b 就是这个内存空间另外一个别名
// &。C++ 中的引用
int &b = a; // 其实不加 & 也是可以的
cout<<b<<endl;
return 0;
}
*/
// 指针指交换
void swap_1(int * a, int * b){
int c = 0;
c = *a;
*a = *b;
*b = c;
};
// 引用值交换
void swap_2(int &a, int &b){
int c = 0;
c = a;
a = b;
b = c;
};
int main(){
int x = 10;
int y = 20;
printf("交换前%d,%d\n",x,y);
swap_1(&x, &y);
printf("swap_1:%d,%d\n",x,y);
// a是x地址,也是x的别名
swap_2(x,y);
printf("swap_2:%d,%d\n",x,y);
return 0;
}