题目来源:
2021程序设计实习期中考试选择题
自己和同学对的答案,不一定正确。
- D
- B【->可以被重载】
D.后置++和–运算符作为二元运算符重载,前置++和–运算符作为一元运算符重载【是对的】 - C
- B不能指向动态分配的数组
- C
- D
A.类B是类A的子类,则若类A指针p指向一个类B的对象,则通过p可以调用在B中有定义而A中没有定义的成员函数【需要有多态】
C. 多态必须通过用基类指针调用基类中的虚函数的方式来实现【派生类对象赋值给基类引用,通过基类引用调用基类虚函数时是多态】 - A
- B
- A
- C 【1 2 4
- C
B. 静态成员函数也可以用virtual修饰【静态成员函数不能有this指针?】 BD
【静态成员函数可以访问全局数据和函数】- B
- A
- C
B.cout<<a里面的<<运算符可以重载为a的成员函数【友元函数?】
D.一个类的友元函数可以同时是这个类的虚函数【VS报错:只有成员函数和基可以是虚拟的】 - vector deque map A?
- D【C:不能仅通过返回值区分模板函数】
B:会出现二义性,但也可以消除,如:
class x { public: int p; };
class y { public:int p; };
class z : public x, public y {};
int main() {
z zz;
zz.x::p; //声明是x中的p
return 0;
}
D:
- C
class Foo2 {static int x;};//static成员变量可以是私有的吗? - B
A?D
A. 一个最小值优先的优先队列类型定义为priority_queue < int, greater < int> >【少了实现方式vector< int >】
C. 在vector里面插入新元素一定是常数时间【vector可以insert到某个元素之前】
D. unique算法不会修改vector的大小