我在一次采访中被问到,虚拟关键字在C++中的类声明有什么用途,我回答说虚拟关键字不能与C++中的类声明一起使用。面试官说这是可能的,并请我稍后进行测试。
现在,我自己检查了它,我知道这是可能的,这不是编译器错误。实际上,当我使用Visual C++编译器执行以下操作时:
virtual class Test
{
int i;
};
我收到一个编译器警告“警告C4091:'virtual':在未声明任何变量的情况下,'Test'的左侧被忽略”。我还无法确定该警告的含义以及虚拟关键字的用途。如果没有有用的用法,那么为什么首先允许这样做,以及为什么这不是编译器错误。
最佳答案
那是VC++中的错误。 Comeau和gcc都拒绝该代码。
关于c++ - 在类声明中使用虚拟关键字,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/828880/