自我介绍
一、讲讲static
答:1.局部变量进入函数只初始化一次
2.全局静态变量别的文件无法调用(面试官表示疑惑,让我再讲一遍,再讲别的文件怎么调用另一个文件,能调用吗?)
3.类成员变量、函数静态可以不实例化调用,编译的时候就已经存入静态区(再次表示疑惑)
二、讲讲智能指针,底层原理
三个都讲了、让自己写一下、weak有什么用,底层原理,我说weak指向的不会引起shared计数+1,可以解决循环,再再次表示疑惑 三、move函数的作用和底层原理
只讲了把左值转右值,其他不会
讲了四点
不会(查了一下:用nothrow版本或者 加一个new_handler)
说了饿汉和懒汉,写了饿汉
讲了防止被继承什么的,最后讲了防止直接实例化才说对
写完,对我为什么退出循环还要再swap一次表示疑惑。我说因为标志位的数还没有在正确位置,先动右标,右标严格大于就会-1,直到动不了,再动左标,小于等于就会+1,直到动不了,最后相遇点的数一定比标志位小,所以交换一次,面试官表示:行吧。(写到吐的模版,不知道他为啥不满意)
复杂度平均nlogn 最差n2
不会,说了一下加锁,
反问,结束,直接挂了。
全部评论
(6) 回帖