博世-智能座舱-软件开发工程师-xc一面

全程中文问答。
一小时,四五个没答出来,所以应该挂了。#牛客AI配图神器#

提问包括但不限于:
1. new/malloc区别?  答,**但是new重载这一块模糊**。
2. 说说智能指针? 共享指针引用计数、独占指针删除copy 构造/赋值运算符,weak_ptr 解决循环引用。常规的答的还行。
3. vector,删除指定值的元素(例如5和6)。 考这个原因是迭代器失效? 
4. 问了gdb的指令,比如准备用gdb,gcc加什么选项,-O3和-g可以一起使用吗? 如何查看线程?如何判断xx文件可以用gdb调试呢?大部分没答出来。
5. 实现单例,但是被问懵了,问我析构函数为什么是私有? 于是我又把它改成公有,本质还是不知所以然。查了一下gpt,回答
"
在 get() 方法中,使用了静态局部变量(static Singleton instance;),
C++ 规定:
• 静态局部变量在程序退出时会自动析构,因此不需要显式释放。
• C++11 以后,静态局部变量的初始化是线程安全的,不会引起并发问题。
所以,我们不需要提供手动的析构方式。
"
6. 深拷贝/浅拷贝。 
7. 你认为拿得出手的模块实现?然后扣细节,最后也被扣懵了。
```
#include <iostream>
#include <vector>

using namespace std; 

int main() {
    vector<int> vec = {1, 2, 3, 5, 6, 5, 7, 6};
    int pos = 0;
    int n = vec.size();
    for (; pos < n;) {
        if (vec[pos] == 5 || vec[pos] == 6) {
            vec.erase(vec.begin() + pos);
            n = vec.size();
        }
        else {
            pos ++;
        }
    }

    for (auto value : vec) {
        cout << value << ' ';
    }
}

```

```
class Singleton {
public:
  static Singleton&amp; get() {
    static Singleton instance;
    return instance;
  }
  int getValue() {
    return value;
  }
  void setValue(int value_) {
    value = value_;
  }
private:
  Singleton() = default;
  ~Singleton() = default;
  int value;
};

int main() {
  Singleton::get().setValue(42);
  std::println(&quot;value={}&quot;, Singleton::get().getValue());
}
```

参考
1. https://en.wikipedia.org/wiki/Singleton_pattern
2. https://en.cppreference.com/w/cpp/language/storage_duration
3. https://stackoverflow.com/questions/15235526/the-static-keyword-and-its-various-uses-in-c
全部评论
我也是这个岗位,也是最近面的
2 回复 分享
发布于 03-15 09:54 辽宁
mark了感觉问的还行没有特别拷打的感觉
点赞 回复 分享
发布于 03-07 20:54 广东
查了一下,vector删除那个最优雅的方式是用 erase + remove_if: " vec.erase(remove_if(vec.begin(), vec.end(), [](int x) { return x == 5 || x == 6; }), vec.end()); "
点赞 回复 分享
发布于 03-07 20:05 江苏

相关推荐

点赞 评论 收藏
分享
05-29 20:34
门头沟学院 C++
KarlAllen:得做好直接春招的准备。学历差的话,一是面试要求会比学历好的严格不少,二是就算面试通过了也会被排序。总之暑期和秋招对于学历差的就是及其不友好
无实习如何秋招上岸
点赞 评论 收藏
分享
评论
8
22
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务