我是C/c++编程新手。
-
C
中的存储类表示可见性和生命周期 -
在
C++
中,构造函数和析构函数用于初始化&释放占用的资源
是的,构造函数有助于减少大量的重复代码,但析构函数用于释放和/或释放资源(一旦对象超出作用域)。
这些概念在实现中是否以某种方式耦合?
C
存储类参见:https://stackoverflow.com/a/2661411/8740349
让我们不讨论实现,因为每个编译器的工作方式不同,但是如果你问c++规范,大多数关键字的含义是相同的。
除了:
register
关键字自C++17
起被删除(在C++11
中被弃用后),没有任何替代。auto
表示自动检测类型,如:
auto myVariable = myFunction("blablabla (how old are you, in Chinese)");
析构函数与存储类相关吗?
不,c++类和/或Struct在其存储被释放之前被析构。
正如在注释中提到的:处理存储的释放不是析构函数的主题,而是相应的"释放器"的主题。(由编译器提供,例如全局变量和局部变量,或者delete
用于new
分配的内存)。