c++ - 如果在匿名命名空间中声明的变量使用什么内存?

标签 c++

如果在匿名命名空间中声明一个变量,会使用什么内存?喜欢:

namespace
{
   Class *pclass;

   void fSet()
   {
       pclass = new Class;

       pclass->func();

   }

   void fDes()
   {
      delete pclass;
      pclass = NULL;
   }

}

这样安全吗?

最佳答案

命名空间对使用的内存没有影响:指向Class的指针在全局(静态)内存区,而它指向的对象在动态(堆)内存区.这与使用命名空间一样安全。

关于c++ - 如果在匿名命名空间中声明的变量使用什么内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18885533/

相关文章:

c++ - 仅使用 regex_search 返回第一个匹配项

c++ - 由于删除的功能调用不明确?

c++ - 寻找类中的隐式沟通

c++ - 在 C 或 C++ 中取消引用数组时使用小数参数

c++ - 在这种情况下,模板参数推导如何工作?

c++ - 重载的新运算符每次都为新对象返回 NULL 内存

c++ - QVector指针的指针

c++ - 在 C++11 lambda 中按引用捕获引用

c++ - 京都内阁 TreeDB : memory usage grows uncontrollably until database is closed

c++ - 如何将枚举导入 C++ 中的不同命名空间?