原帖由 3040602024 于 2007-6-2 22:53 发表
我怎么一发贴都没人回啊
原帖由 3040602024 于 2007-6-2 22:24 发表
class A
{
int j;
public:
A(){cout<<"heo"<<endl;}
~A(){cout<<"endl\n";}
};
main()
{
A::A::A();
A aaaa();
}
都没调用构照函数。谁能说一下这是什 ...
原帖由 3040602024 于 2007-6-3 12:01 发表
谢谢,
A::A();和A::A::A()
到底是什么啊。对一个简单、问题 深入理解不是钻牛角尖
你可能会了解你易想不到的收获
原帖由 antigloss 于 2007-6-3 12:03 发表
我觉得理解这个没有任何收获。真的可以编译通过?不会有任何警告?
原帖由 3040602024 于 2007-6-2 22:24 发表
class A
{
int j;
public:
A(){cout<<"heo"<<endl;}
~A(){cout<<"endl\n";}
};
main()
{
A::A::A();
A aaaa();
}
都没调用构照函数。谁能说一下这是什 ...
因此,目前已经有人提案,建议 A::A 不单独作为构造函数解释,而是在一些只能作类型解释的语义环境下使其成为类型 A。比如下面的情况:
A::A a; // error, A::A is not a type name.
struct A::A a2; // ok, a2 is an object of type A
这已经写在标准草案中。至于能否成为正式的标准,还需拭目以待
欢迎光临 Chinaunix (http://bbs.chinaunix.net/) | Powered by Discuz! X3.2 |