gpt4 book ai didi

c++ - 无法理解类构造函数

转载 作者:太空狗 更新时间:2023-10-29 23:22:08 25 4
gpt4 key购买 nike

我有课。

class Books
{
private:
int m_books;
public:
Books(int books=0)
{
m_books = books;
}

Books(const Books &source) //Here is what I don't understand.
{
m_books = source.m_books;
}
};

我不明白为什么它必须是Books(const Books &source),而不是Books(const Books source)

最佳答案

当你有

Books(const Books &source)

源通过引用传递。当你有

Books(const Books source)

它会按值传递。但是要按值传递,你就是复制构造函数。因此,为了避免无限递归,复制构造函数必须接受一个引用。

关于c++ - 无法理解类构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13767835/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com