这是C ++风格或正确性的问题。
假设您有functionA和functionB,将值传递给它不需要自己的functionA是正确还是好的样式,但需要知道它调用functionB,它(函数A)稍后调用它?
我无法直接引用在main中声明的值。
答案 0 :(得分:3)
如果functionB
需要该值,则有效地functionA
需要它。因此,它应作为参数传递给functionA
。
如果您担心创建价值副本,您可以随时通过引用或常量引用传递它。
答案 1 :(得分:0)
考虑封装调用functionB
答案 2 :(得分:0)
C ++中大变量的常见约定是使用指针。为了节省资源,你可以使用new
初始化指向堆上变量的指针,如下所示:int *num = new int;
这样你就不会传递一个大数组 - 例如 - 而是绕过内存中该数组的十六进制地址。