gpt4 book ai didi

c - 在生产代码中使用 C 中的外部变量有哪些优点和缺点?

转载 作者:太空宇宙 更新时间:2023-11-04 06:10:55 25 4
gpt4 key购买 nike

我有一个必须在多个文件之间共享的变量。因此,在其他文件中定义的函数中访问此变量的一种方法是将其传递给函数调用的参数。另一种方法是使用 externExtern 变量将起作用。但我不确定我必须面对的主要问题是什么..

最佳答案

可以(至少)通过四种方式在文件之间共享变量。您已经提到了其中两个:

  • 使用extern:它将是一个全局变量,任何人都可以修改它,不是线程安全的;应尽量减少使用全局变量;
  • 传递指向变量的指针:它将提供对变量的读/写访问;
  • 传递变量的值:提供对变量的只读访问;
  • 使用访问函数。

函数可以很简单:

float read_speed()
{
return speed;
}

如果变量也需要修改,可以提供另外一个函数:

void write_speed(float new_speed)
{
speed = new_speed;
}

使用访问函数的优点是它将变量与其他文件分开。如果需要,您可以为同一个变量提供多个函数,以满足不同的需求。

代价是代码会增加一点,速度会稍微降低。

比较:

float read_speed_mph(); // get speed in miles per hour
float read_speed_mps(); // get speed in meters per second

它们都返回相同的速度,以不同的单位表示。函数体将进行正确的计算以提供正确的值,而变量将保持不变。

关于c - 在生产代码中使用 C 中的外部变量有哪些优点和缺点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56981934/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com