gpt4 book ai didi

c++ - 复制构造函数 - C++

转载 作者:可可西里 更新时间:2023-11-01 15:36:59 25 4
gpt4 key购买 nike

我可以通过只传递一个指针而不是 const 引用来编写一个复制构造函数吗? (如果我确保我不会更改任何值,可以吗?)

像这样:

SampleClass::SampleClass(SampleClass* p)
{
//do the necessary copy functionality
}

代替:

SampleClass::SampleClass(const SampleClass& copyObj)
{
//do the necessary copy
}

提前致谢。


谢谢大家。因此,如果我编写一个接受指针的构造函数(并认为这是我的复制构造函数),编译器仍会提供默认的复制构造函数,在这种情况下我的构造函数(我认为是我的复制构造函数)不会被调用并且将调用默认的复制构造函数。知道了。

最佳答案

是的,您可以编写一个带有指向对象指针的构造函数。但是,它不能称为复制构造函数。复制构造函数的定义要求您传递同一类的对象。如果您要传递任何其他内容,是的,它是一个构造函数,但不是复制构造函数。

关于c++ - 复制构造函数 - C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/746240/

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