kkbC++单选题

答案
1、c++兼容c ?

2、c++中使用流进行输出,其中输出到屏幕的对象是

3、对使用关键字new所开辟的动态内存空间,释放时必须使用

4、class成员声明时没有使用private关键字,则默认是

5、如果一个类没有定义任何构造函数 编译期总是会自动生成一个不带参数的构造函数?

6、一个类可以有几个析构函数?

7、int Func(int, int)可以与 double Func(int, int) 构成函数重载?

8、函数参数有默认值,该参数之后的参数都需要有默认值?

9、c++中解决菱形继承冲突的机制是

10、已定义类A并有合法语句 A* p = new A(5) ,那么类A一定有一个显示定义的构造函数?

11、在一个类中,哪些成员可以是多个

12、new和mallco可以互换使用?

13、int id[sizeof(unsigned long)]; 这个对吗?为什么?

14、某文件中定义的静态全局变量(或称静态外部变量)其作用域是

15、引用和指针都可以指向空值?

16、const与 #define的比较: IDE可以对宏定义进行调试?

17、const与constexpr的说法:const是编译期常量?

18、malloc/free 与 new/delete的说法: 由于c++是兼容c语言的,可以使用malloc替换new,free替换delete使用?

19、若数组名作实参而指针变量作形参,函数调用实参传给形参的是?

20、构造函数声明为explicit A(int n),A a{1.0}是正确的?

21、内联函数会做类型检查?

22、“new”in c++ is a?

23、final关键字的作用: 可以修饰类静态方法?

24、c++不允许多继承?

25、const不能修饰哪些信息

26、子类无法访问父类受保护成员?

27、关于类对象成员初始化的顺序说法: 根据类的构造函数参数初始化列表的顺序初始化?

28、虚函数表是在编译时创建的?

29、有继承关系的类,析构函数为什么要定义为虚析构()

30、void print(const int) const; 和 void print(const int); 定义会冲突?


39、关于stl中vector的说法:当空间大小不足时,新分配的空间大小为原空间大小的2倍?

40、set与hash_set的区别:都可以自动进行排序?


42、map[]与find的区别:map[]访问的元素不存在时会插入一个默认值并返回?


45、lambda函数不需要返回值?

46、模板的声明和实现必须放在h文件中?

47、如何禁止隐式转换()


49、父类指针所指向的对象如何安全转换为子类对象


52、模板函数必须要有参数


54、关于模板类特化说法:模板类不允许进行特化?


61、关于NULL和nullptr说法:c++中 NULL是((void *)0)?

62、关于下面代码func(n)可能会有错误,需要std::forward(n)进行传递?

 template<class T>     
 void print(T&& n){       
     func(n);     
 }

63、move和forward的说法:move的返回结果是右值?

64、现有如下函数: void print(int, double, float), 使用auto f = bind(print, std::placeholders::_1);能正常转换吗?

65、关于stl中智能指针说法:weak_ptr要lock之后就可以正常使用?


68、在c++11中auto类型不能正确推导auto a[] = {1, 2, 3};?


70、以下add模板函数能够正确编译并且能够完美使用?

template <class T1, class T2>
auto add(T1 a, T2 b) -> decltype(a + b)
{
	return a + b;
}

72、请问class D的大小

class A{     	int a;     };     
class B : public A{     	int b;     };     
class C : public A{     	int c;     };     
class D: public B, public C{     	int d;     };

74、普通函数的优先级比模板函数高?

75、请问class B的大小

class A{     	int a;     };     
class B : virtual public A{     	double b;     };

76、请问class D的大小

class A{     	int a;     };     
class B : virtual public A{     	int b;     };     
class C : virtual public A{     	int c;     };     
class D: public B, public C{     	int d;     };   

79、关于异常的说法:自定义异常必须继承自std::exception类?

80、有以下类,obj是A类对象,obj的地址为0x7ffdaf91d6bc,请问成员属性c的地址是多少

struct A{       int a;       short b;       int c;     };

81、有以下类,obj是A类对象,obj的地址为0x7ffe86fe18b0,请问成员属性c的地址是多少

struct A{       virtual ~A(){}       int a;       short b;       int c;     };     

82、对于派生类的构造函数,在定义对象时构造函数的执行顺序为?

83、如果n的地址为0x7ffe0ecd138c,以下代码会输出什么()

int n = 1;       
cout << "address 1 =  " << &n << endl;       
cout << "address 2 =  " << &(n++) << endl;       
cout << "address 3 =  " << &(++n) << endl; 

84、以下代码输出信息()

struct A{       
    void* operator new(size_t  sz){        
        void* o = malloc(sz);        
        cout << "1";        
        return o;       
    }       
    A(){         cout << "2"  << endl;       }       
    A(int a, int b){         cout << "3"  << endl;       }     
};          
int main(int argc, char const *argv[])     {       
    A* p = new A();       
    return 0;     
}

86、关于封装:通过封装,对象的属性都是不可见的?

87、假设A为一个类,那么A的正确的拷贝构造函数的原型声明是A(const A& a);?

88、假设A为一个类,那么A的正确的移动构造函数的原型声明是A(A&& a);?

89、c++中用memset来对类对象清零会清空虚函数表?

90、 int (*s[10])(int)表示的是什么

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值