【发布时间】:2013-05-12 03:51:49
【问题描述】:
假设我有一个简单的控制台程序如下:
(由于我是新手,还没有测试它可能包含错误)
#include <iostream>
using namespace std;
void startProgram();
int main(){
a = 20; //I want to somehow set this so that I can use it in any other function
//without passing it through like startProgram(a);
startProgram();
return 0;
}
void startProgram(){
cout << a << endl;
}
那么...我该如何做才能更改 'a' 的值或打印它或做任何事情而不将其传递给每个函数?
很抱歉,如果已经有这样的问题,我不怀疑,但我找不到任何问题!
提前致谢!
【问题讨论】:
-
使其全球化。但是你为什么不想通过呢?在大多数情况下,这是更好的方法。
-
因为那时我必须传递和返回大量变量,因为我将尝试在比上面的示例更大的范围内使用它..
-
欢迎编程。如果变量太多,请将相关变量放入结构或类似结构中。你的规模越大,你就越有可能因为踩到你的全局变量并产生副作用而搞砸。
标签: c++ function variables parameter-passing user-defined-functions