คำถามติดแท็ก default-arguments

1
ข้อผิดพลาด: อาร์กิวเมนต์เริ่มต้นที่กำหนดสำหรับพารามิเตอร์ 1
ฉันได้รับข้อความแสดงข้อผิดพลาดพร้อมรหัสด้านล่าง: class Money { public: Money(float amount, int moneyType); string asString(bool shortVersion=true); private: float amount; int moneyType; }; ก่อนอื่นฉันคิดว่าไม่อนุญาตให้ใช้พารามิเตอร์เริ่มต้นเป็นพารามิเตอร์แรกใน C ++ แต่ได้รับอนุญาต

3
มันโอเคที่จะส่งคืนค่าอาร์กิวเมนต์เริ่มต้นโดยการอ้างอิง const หรือไม่
มันโอเคที่จะส่งคืนค่าอาร์กิวเมนต์เริ่มต้นโดยการอ้างอิง const เช่นในตัวอย่างด้านล่าง: https://coliru.stacked-crooked.com/a/ff76e060a007723b #include <string> const std::string& foo(const std::string& s = std::string("")) { return s; } int main() { const std::string& s1 = foo(); std::string s2 = foo(); const std::string& s3 = foo("s"); std::string s4 = foo("s"); }
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.