C :关于对象的一个小问题
C++: a small issue about object
我有以下类:
class aClass {
public:
aClass():a(0){}
void print(){cout<<a<<endl;}
private:
int a;
};
在main()函数中,我意外地创建了这样的对象:
aClass obj();
我认为编译器会丢弃错误,因为预计会调用默认复制构造函数,但是BRACKET()内部没有参数。有趣的是,根本没有错误。因此,我尝试通过致电:
来访问成员函数obj.print();
现在引发此错误:
request for member 'print' in 'obj', which is of non-class type 'aClass()'
有人可以向我解释吗?什么是创建的 obj()?
aClass obj();
这是不是由IT默认构造函数创建的类Aclass的实例。
它是函数原型的功能,没有参数并返回aclass。
这是函数声明。
该语言允许在其他功能中声明函数;效果是在周围的名称空间中声明功能,但仅使声明范围内可用。
相关文章:
- 在决定是通过参考还是通过价值时,尺寸真的是一个问题吗
- 在用于格式4的arm模拟器中实现功能时的一个问题
- 为什么在分配给成员变量之前获取unique_ptr的返回是一个问题?
- 我在使用 boost::serialization 时遇到了一个问题,我的代码在 Linux 中运行良好,但在 Wind
- 在C++,重复申报仍然是一个问题吗?
- "Memory Fragmentation"这仍然是一个问题?
- 缺少类型说明符和另一个问题
- 在浮点精度成为一个问题之前,可以将多少个浮点值加在一起
- 关于使用C++结构的一个问题
- 关于骰子概率计算的一个C++问题
- 我想知道我将如何实现 + 运算符重载.我已经从我上一个问题中计算出 += 运算符重载
- 组合理论的一个问题
- 我有一个问题,创建了C 中阻塞队列的向量
- CreateFileWindows XP和7中存在一个问题
- 我是编码新手,我面临一个问题
- 在添加新记录和访问记录时有一个问题
- 专用纯虚拟模板函数(未定义引用)的另一个问题
- 在C++中,这个Eigen::张量的声明是安全的,还是有缺陷的?我应该为它提交一个问题吗
- 我如何让我的部分代码循环并重复一个问题,直到答案是有效的输入C++
- 我的程序停止工作,因为检测到一个问题