class B;
class A {
public:
	A () {
		B* pb = new B;
		printf ("A()");
	};
	~A () {
		printf ("~A()");
	};
};

class B {
public:
	B () {
		printf ("B()");
	};
	~B () {
		printf ("~B()");
	};
};

int main(int argc, char* argv[])
{
	printf("Hello World!\n");
	return 0;
}
以上代码会报:
error C2512: 'B' : no appropriate default constructor available
因为A的构造函数是内联函数,编译器展开的时候,没有发现B的构造函数,所以报错了。

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-03
  • 2021-09-30
  • 2021-10-19
  • 2021-11-18
  • 2022-12-23
猜你喜欢
  • 2022-01-01
  • 2022-12-23
  • 2021-12-12
  • 2022-03-08
  • 2022-12-23
  • 2021-04-09
  • 2022-02-08
相关资源
相似解决方案