我发现了一些奇怪的东西,我不理解。
当打印出来时,它返回
我在哪里可以找到关于这个的信息?这是什么?
而在尝试执行
std::string a();
当打印出来时,它返回
1
。我不知道它从哪里来。我认为a()
是一个没有参数的构造函数,但看起来不是这样。我在哪里可以找到关于这个的信息?这是什么?
而在尝试执行
std::string b(a);
时,编译器会报错:error: no matching function for call to ‘std::basic_string<char>::basic_string(std::string (&)())’
希望能够得到解释。
std::string (&)()
是一个函数的引用确实不容易,但我希望人们至少会尝试去理解它;如果是这种情况,那么问题应该是像“我不知道这个std::string (&)()
是什么,有人能告诉我吗?”。即使是“我完全不理解这个错误,也不知道从哪里开始”,也表明了努力,但目前看来更像是(夸张的)“这里有一个错误,不想读它,解释给我听”。好在SO有一个投票系统,所以它可以捕捉到许多意见。 - PlasmaHH