一、字符串类 MyString 有成员 char *StrPtr 和 int Length。(1) 设计构造、析构、拷贝、赋值函数使得每个对象管理各自内存区域,不会出现重复释放、内存泄漏等问题。(2) 若对象只读,试说明更有效率的管理方法。 二、在 MVC 模型中:(1) 说明用户执行操作后,模型和视图如何合作使操作效果在视图中展现;(2) 频繁刷新视图导致屏幕高速闪烁,试说明解决方案。 三、栈有数组、链表等多种实现方案。试构造类的层次关系,说明如何支持栈对象在运行中动态地在实现方案之间切换。 四、运用静态成员变量和函数,构造同时只能存在一个实例的类,使得外界不能创建对象,但可以获得唯一实例的指针。 五、给定长 n 的整数数组 arr,在一次遍历中:(1) 求数组最大值;(2) 询问数组中奇数与偶数之和是否相等;(3) 求最大和子段的左右端点。 六、给定递归 gcd 函数。(1) 证明算法停机;(2) 证明算法返回两个参数的最大公约数;(3) 将递归改写为循环迭代,并说明循环不变式。 七、说明在不同继承类型下,基类各个可见性的成员在子类中的可见性。