小编San*_*dro的帖子

虚拟析构函数的默认覆盖

每个人都知道基类的析构函数通常必须是虚拟的.但是衍生类的析构函数是什么?在C++ 11中,我们有关键字"override"和显式使用默认析构函数的能力.

struct Parent
{
  std::string a;
  virtual ~Parent()
  {
  }

};

struct Child: public Parent
{
  std::string b;
  ~Child() override = default;
};
Run Code Online (Sandbox Code Playgroud)

在Child类的析构函数中使用关键字"override"和"= default"是否正确?在这种情况下编译器会生成正确的虚析构函数吗?

如果是,那么我们可以认为它是好的编码风格,我们应该总是以这种方式声明派生类的析构函数,以确保基类析构函数是虚拟的吗?

c++ c++11 c++14

35
推荐指数
5
解决办法
2万
查看次数

默认情况下,gcc是否将程序与静态或动态库链接?

我的Linux系统上安装了相同库的静态和动态版本:

/usr/lib/libsample.a
/usr/lib/libsample.so
Run Code Online (Sandbox Code Playgroud)

如果我设置参数-lsample,这些库中的哪一个将使用gcc?

gcc xxx.c -lsample
Run Code Online (Sandbox Code Playgroud)

如何强制gcc使用库的静态或动态版本

c c++ linux linker gcc

7
推荐指数
1
解决办法
3626
查看次数

如何计算内存分配的数量

我想计算程序中内存分配调用(malloc、calloc、new ...)的数量。该程序积极使用 STL 容器。主要目的是计算所有这些容器内的内存分配。稍后我将使用这些信息来优化性能。我的程序是用 C++ 编写的,在 Linux 下运行。有什么工具可以做到吗?

c++ linux memory-management

6
推荐指数
1
解决办法
4113
查看次数

scp:如何找出复制完成

我正在使用scp命令将文件从一个Linux主机复制到另一个主机.我在host1上运行scp commend并将文件从host1复制到host2.文件很大,复制它需要一些时间.一旦复制开始,就会立即显示host2文件.即使复制仍在进行中,我也可以使用此文件执行所有操作.

有没有可靠的方法来确定在host2上是否完成了复制?

linux bash shell scp sh

5
推荐指数
1
解决办法
1万
查看次数

在 vim 中折叠 C++ 函数(并且仅是函数)

是否可以在vim中使用折叠来折叠C++函数?

我只想折叠函数和类方法。我不想像标准的“setfoldmethod=syntax”那样折叠类、命名空间、“if”和“for”语句等。

是否可以?

vi vim

5
推荐指数
1
解决办法
1448
查看次数

C++上周一的时间戳

我需要使用C++获取上一个星期一开始(00:00)在我当地时区的时间戳(time_t).有没有简单的方法在不使用第三方库的情况下仅使用标准C++?

c++ time datetime

0
推荐指数
1
解决办法
192
查看次数

标签 统计

c++ ×4

linux ×3

bash ×1

c ×1

c++11 ×1

c++14 ×1

datetime ×1

gcc ×1

linker ×1

memory-management ×1

scp ×1

sh ×1

shell ×1

time ×1

vi ×1

vim ×1