- 主题:一个构造函数的问题
push那行你typo了吧,多了个字母i
--
FROM 114.245.195.*
我去掉能编译通过的呀。两种构造都能pass。
VS2022,默认用C++14
【 在 GoGoRoger 的大作中提到: 】
: 去掉也没用,问题不在这里。
--
修改:z16166 FROM 114.245.195.*
FROM 114.245.195.*
贴你没编译过去的完整代码,贴上来的,和你本地喂给编译器的,不要有任何的不一致。这都是沟通成本。
【 在 GoGoRoger 的大作中提到: 】
: 我在本地,将引用传递改为了值传递,也是编译不过的,不知道你们怎么pass的。。。。
:
--
FROM 114.245.195.*
改成花括号能编过去
mypq_type fifth{mycomparison()}; // greater-than comparison
【 在 GoGoRoger 的大作中提到: 】
: // constructing priority queues
: #include <iostream> // std::cout
: #include <queue> // std::priority_queue
: ...................
--
FROM 114.245.195.*
版上前一阵还争论了是否优先用{}初始化
【 在 DoorWay 的大作中提到: 】
: 这是一个著名的问题,有个专门的名字叫 most vexing parsing
: Effective STL 第六节 和 Effective Modern CPP 第七节里都提到过。
: 我记得Effective CPP里也有提到,但是搜vex没找到。—— 买本Effective的书吧,能看10年。
: ...................
--
FROM 114.245.195.*
把push、top的删掉,只保留定义的那行,VC是有警告的
【 在 GoGoRoger 的大作中提到: 】
: 关键是构造成功了,却在push的时候出错,而且提示极不可读,太复杂了。
--
修改:z16166 FROM 114.245.195.*
FROM 114.245.195.*