警告:未引用的局部变量
Warning: Unreferenced local variable
当我为类a提供构造函数时,我没有得到未引用的局部变量,为什么?空构造函数做什么来消除警告?
class A
{
public:
A() {}
};
int main()
{
A a;
}
这只是一个理论,但是由于构造函数可能包含可能导致副作用的代码,因此有人可能决定构造一个未使用的对象只是为了运行该代码。如果没有构造函数,也从不引用自己构造的对象,那么可以确定该对象没有用途。
例如,如果A
是持有互斥锁的对象(并且在被销毁时释放该锁),则此代码
int main()
{
A a;
// other actions
}
可以保证这个函数是线程安全的,即使a
没有被引用
相关文章:
- 将引用分配给局部变量,如果局部变量超出范围,它会超出范围吗?
- 返回对局部变量 - C++ 的引用
- 警告 C4101 未引用的局部变量
- 现代编译器会优化只引用对象子集的局部变量吗
- 右值引用和局部变量的移动
- 结构数组 - 未引用的局部变量
- 返回对局部变量的引用是否正常工作?
- 为什么 ++ 运算符触发器返回对局部变量警告的引用
- 三元运算符:编译器不发出局部变量警告的返回引用
- 为什么 C++ 编译器不警告返回对局部变量的引用
- 变量循环范围会导致返回局部变量的地址引用
- 通过引用返回局部变量
- 为什么我得到未引用的局部变量
- 返回由引用指定的引用局部变量
- 返回静态局部变量作为引用
- 没有返回对局部变量的引用的编译器警告
- 为什么在这段代码中返回对局部变量的引用
- 引用与设置局部变量
- 通过引用参数将局部变量分配给
- 捕获和调试对移动lambda内部局部变量引用的无效使用