相关疑难解决方法(0)

带空括号的默认构造函数

有没有什么好的理由在C++中调用默认构造函数时,一组空的圆括号(括号)无效?

MyObject  object;  // ok - default ctor
MyObject  object(blah); // ok

MyObject  object();  // error
Run Code Online (Sandbox Code Playgroud)

我似乎每次都自动输入"()".是不是有一个很好的理由不允许这样做?

c++ constructor c++-faq default-constructor most-vexing-parse

192
推荐指数
8
解决办法
3万
查看次数

最令人烦恼的解析混乱

我正在学习C++ 11,我偶然发现了统一的初始化器.

我不明白以下代码应该显示"最令人烦恼的解析"歧义:

#include<iostream>


class Timer
{
public:
  Timer() {}
};

int main() 
{

  auto dv = Timer(); // What is Timer() ? And what type is dv?

  int time_keeper(Timer()); // This is a function right? And why isn't the argument " Timer (*) ()" ?



  return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ function-pointers class c++11

6
推荐指数
1
解决办法
459
查看次数