c++这段代码没有域操作符为什么可以运行
本文介绍了c++这段代码没有域操作符为什么可以运行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
问题标出了, A(); //不应该A::A()吗?
#include <iostream>
#include <string>
using namespace std;
class A
{
public:
A()
{
cout << "A constructor" << endl;
}
~A()
{
cout << "A destructor" << endl;
}
};
int main()
{
A(); //不应该A::A()吗?
cout<<"end xxx\n";
cout<<"end yyy\n";
}
解决方案
正常的调用应该是
int main()
{
A a = A(); //不应该A::A()吗?
cout<<"end xxx\n";
cout<<"end yyy\n";
}
类比一下一个由返回值的函数
int add(int a, int b);
可以这样调用
int c = add(1, 2);
当然也可以这样调用了
add(1, 2);
这篇关于c++这段代码没有域操作符为什么可以运行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文