如何将对象传递给C ++中的函数?
有四种方法可以将对象传递给函数。假设您有一个X类,想将其传递给fun函数,然后-
传递值
这将在功能范围内创建对象的浅层本地副本。您在此处修改的内容不会反映在传递给它的对象中。例如,
声明
void fun(X x);
呼唤
X x; fun(x);
通过参考
这会将对对象的引用传递给函数。您在此处修改的内容将反映在传递给它的对象中。没有创建对象的副本。例如,
声明
void fun(X &x);
呼唤
X x; fun(x);
通过const引用传递
这会将对对象的const引用传递给函数。您不能在此处直接修改/重新分配对象(尽管可以使用这样做的方法)。如果您希望函数仅具有对象的只读副本,这将很有用。没有创建对象的副本。例如,
声明
void fun(X const &x);
呼唤
X x; fun(x);
通过const指针传递
这会将指向对象的const指针传递给函数。您不能在此处修改/重新分配指针。如果您希望函数在指针中仅包含该对象的地址,这将很有用。没有创建对象的副本。例如,
声明
void fun(X const *x);
呼唤
X x; fun(&x);
通过const指针传递
这会将指向对象的指针传递给函数。这类似于将引用传递给对象。没有创建对象的副本。例如,
声明
void fun(X *x);
呼唤
X x; fun(&x);
热门推荐
1 泰迪狗狗如何训练
3 狗狗训练图
5 狗狗训练方法
6 训练狗狗不咬人
8 敏捷训练狗狗
10 训练狗狗吃饭
11 泰迪狗狗训练
12 狗狗从多大开始训练
13 狗狗训练学校费用
14 怎么去训练狗狗
15 狗狗训练狗狗
16 狗狗训练教程
17 训练狗狗装死
18 泰迪狗狗的训练方法