Tag: 提升任何

boost :: variant和boost :: boost如何工作?

boost库中的variant和any如何在内部工作? 在我正在进行的一个项目中,我目前使用标记联合。 我想用别的东西,因为C ++中的工会不让你使用带有构造函数,析构函数或重载赋值操作符的对象。 我询问任何和变体的大小,并与他们做了一些实验。 在我的平台中,变体将其最长可能types的大小加上8个字节:我认为它只是8字节的types信息,其余的是存储的值。 另一方面,任何只需要8个字节。 因为我在一个64位的平台上,我想任何只是一个指针。 任何人知道它是什么types? Variant如何通过模板实现它的function? 在使用它们之前,我想了解更多关于这些类的知识。