5-1 答:作用域是一个标识符在程序正文中有效的区域。4 种类型:函数原型作用域、局部
作用域、类作用域和命名空间作用域。
5-2 答:可见性是标识符的有效范围。可见性的一般规则:(1)标识符要声明在前,引用在
后;(2)在同一作用域中,不能声明同名的标识符;(3)在没有互相包含关系的不同作用域
中声明的同名标识符,互不影响;(4)如果在两个或多个具有包含关系的作用域中声明了同
名标识符,则外层标识符在内层不可见。
5-5 答:静态数据成员是不属于任何一个具体对象,为整个类所共有的数据成员。特点:具
有静态生存期,不属于任何一个对象,为整个类所共有。
5-6 答:静态成员函数是不属于任何一个具体对象,为整个类所共有的函数成员。特点:可
以直接访问该类的静态数据和函数成员,而访问非静态成员必须通过对象名。
5-9 答:不是,友元关系是单向的;不是,友元关系是不可传递的;不是,友元关系是不被
继承的。
5-10 答:可以。private: static int m.
5-16 答:编译:输入.cpp 文件,输出.obj 文件 连接:输入.obj 文件,输出.exe 文件
编译通过编译系统处理一个个源文件,生成目标文件,而连接将各个编译单元的目标文件和
运行库当中被调用过的单元加以合并。
(1)编译报错 (2)编译报错 (3)不报错 (4)连接报错
6-6 答:“*”表示获取指针所指向变量的值 “&”表示得到一个对象的地址
6-7 答:指针是专门用来存放内存单元地址的数据类型。地址是指针所指向内存单元的位置,
地址中的值是指针所指向内存单元储存的内容。
6-9 答:‘ ’。
6-11 答:引用是一个别名,不能为 NULL 值,不能被重新分配;指针是一个存放地址的变量。
当需要对变量重新赋以另外的地址或赋值为 NULL 时只能使用指针。
6-15 答:const int * p1 表示指向常整型数据的指针,可以改变指针存放的地址,但不能
通过指针改变其所指向的内容;而 int * const p1 则表示指向整型数据的常指针,不能改
变存放的地址。
6-18 答:没有删除由 new 建立的对象,造成内存泄露。
6-19 答:long (*ptr)(int) ;
class A{
long (*ptr)(int) ;
};
评论0
最新资源