如何从构造函数副本 T(const T&) 调用对象 T?
How to call object T from constructor copy T(const T&)?
我有一个拷贝构造函数T::T(const T&)
。该对象有两个属性,比方说 color
和 height
。这意味着我需要将参数中对象的颜色和高度分配给我的对象。问题是我不知道如何调用参数,因为它没有命名。
如果参数被命名,比方说 t,代码如下所示:
T::T(const T& t) {
color = t.color
height = t.height
}
但就我而言,没有 t 参数。我应该用以下代码中的问号 ?
替换什么:
T::T(const T&) {
color = ?.color
height = ?.height
}
感谢帮助!
不命名参数是不可能的
当您省略参数名称时,您会这样做 因为您不需要它。如果您确实需要它,请不要省略它。
正如@some-programmer-dude 提到的,我对函数声明和定义之间的区别感到困惑。
我的声明是 T::T(const T&)
但这并没有阻止我在我的定义 T::T(const T& t)
.
中定义参数 t
谢谢!
我有一个拷贝构造函数T::T(const T&)
。该对象有两个属性,比方说 color
和 height
。这意味着我需要将参数中对象的颜色和高度分配给我的对象。问题是我不知道如何调用参数,因为它没有命名。
如果参数被命名,比方说 t,代码如下所示:
T::T(const T& t) {
color = t.color
height = t.height
}
但就我而言,没有 t 参数。我应该用以下代码中的问号 ?
替换什么:
T::T(const T&) {
color = ?.color
height = ?.height
}
感谢帮助!
不命名参数是不可能的
当您省略参数名称时,您会这样做 因为您不需要它。如果您确实需要它,请不要省略它。
正如@some-programmer-dude 提到的,我对函数声明和定义之间的区别感到困惑。
我的声明是 T::T(const T&)
但这并没有阻止我在我的定义 T::T(const T& t)
.
谢谢!