注册 登录
编程论坛 C++教室

帮忙看一下呀初学的我不懂里面的意思呀

qq120230775 发布于 2010-10-04 18:10, 560 次点击
#include <iostream>
using namespace std;
class A
{
public:
    A(){cout<<"执行构造函数创建一个对象\n";}
    A(A&){cout<<"执行复制构造函数创建该对象的副本\n";}
    ~A(){cout<<"执行析构函数删除该对象\n";}
};
A func(A one)//>>>>>>>这一句是什么意思呀 在类A中的函数的小括号内还要在加个类A;而one又还表着什么意思呢?
{
    return one;
}
int main()
{
    A a;
    func(a);
    return 0;
}

在上面的A func(A one)这一句是什么意思;
A func(A one)//>>>>>>>这一句是什么意思呀 在类A中的函数的小括号内还要在加个类A;而one又还表着什么意思呢?

4 回复
#2
nbaqqqq2010-10-04 18:29
A func(A one)    一个传递类对象的函数    A表示one是一个类A的对象   one是个形参    这个函数的返回值也是一个A类 类型的对象
这个例题应该是想让你知道          复制构造函数在什么情况下会被调用
#3
m21wo2010-10-04 18:30
A func(A one)//此时 A相当一种自定义数据类型,one 是数据类型为A的形参
#4
tornador2010-10-04 22:11
首先,有一点你弄错了,函数fun不是类A中的函数,它只是一个返回值是类A类型的一般函数,不属于哪个类。跟int fun(int a)没有什么区别,只是返回值与传递参数值的类型不同。
第二,括号内的A类的只是一个形参,是调用这个函数时传递给函数的参数而已。跟这个形参的名称没有多大关系,可以是x,也可以是y.
#5
jment2010-10-05 23:14
一个名叫func的函数,参数为one,参数的类型为A, 函数func的返回值类型为A

1