//...省略
struct Teacher
{
int age;
char name[20];
};
//1 指针的引用
void getT(Teacher*& myp)
{
myp = new Teacher;
myp->age = 23;
}
//3&4 复制构造函数的第4种调用时机
// 函数返回值是一个元素时,返回的是匿名对象(去和留)
myString func()
{
myString str("dajksjd");
return str;//返回匿名对象
}
//5 构造和析构综合练习:匿名对象:直接调用构造函数;构造中调用构造
//答:直接调用构造函数myString t1 = func(),匿名对象会被扶正;否则立刻析构
//6 类的成员变量和成员函数是如何分开的?this指针隐藏机制
//答:成员变量和成员函数是分开存储的,C的内存四区模型仍有用;
// 普通成员函数隐式包含一个指向当前对象的this指针,静态成员函数没有this指针
//7 数组类和字符串类的重载(已完成)
int main01()
{
//2 常引用
int x = 10;
const int& y = x;//让x拥有只读属性,不能通过y修改x
//y = 20;//err
const int& m = 55;//字面量初始化常引用,会分配内存地址
//3&4
func();//没有变量来接,立刻析构
myString t1 = func();//不析构,匿名对象转正
myString t2;
//t2 = func();//调用"="操作符,匿名对象析构
return 0;
}