后端岗位面试题更新 2026-08-05

若禁用移动构造和移动赋值函数,同时不声明拷贝构造和赋值函数,对拷贝构造和赋值函数的调用是否有影响?

小马智行后端开发人工智能风险判断技术原理C++

考察说明

考察C++特殊成员函数生成规则及移动操作被删除后的后退机制

回答思路

  1. 明确声明删除移动操作后拷贝构造和拷贝赋值是否仍会隐式生成
  2. 说明对拷贝场景的实际调用影响(如拷贝构造不影响,拷贝赋值受影响)
  3. 指出移动操作被删除时,传右值是否会后退到拷贝操作
  4. 辨析声明删除与不声明(用户未提供)两种情况的差异