A:栈
 B:堆
 C:代码段(常量区)
 D:数据段(静态区)
 答案 : 代码段(常量区)
验证如下:
class Person
{
public:
	virtual void BuyTicket() { cout << "Person::BuyTicket()" << endl; }
};
int main()
{	
	int a = 4;
	printf("栈区:%p\n", &a);
	int* c = new int;
	printf("堆区:%p\n", c);
	static int b = 3;
	printf("静态区:%p\n", &b);
	const char* d = "hello";
	printf("常量区:%p\n", d);
	Person ps;
	printf("虚表:%p\n", *((int*)&ps));
	
	return 0;
}
 

 思路:比较虚函数表内存储的地址与其他存储区域的地址进行对比,看谁更接近。
 通过上面的结果可以看出:虚表的地址 与 常量区的地址最为接近。
当然:以上的结果是windows下VS2022测试的结果。
 至于其他平台是否也是存储再常量区,笔者还未进行研究。










