Oys*_*ein 28 c c++ static keyword
众所周知,关键字在C语言中static有多重含义 .C99增加了合法写作的可能性
void foo (int arr[static 50])
{
// ...
}
Run Code Online (Sandbox Code Playgroud)
这增加了混乱,而C++有静态成员变量和函数.
如果可以以某种方式连接所有用途,这不会那么麻烦,但我发现很难找到某些情况的链接.特别是为什么static关键字应该用于修改可见性(链接),或者它究竟与数组的最小元素数量有关.
那么滥用static关键字是否存在历史原因,或者是否存在连接其所有用途的秘密链接?
Pet*_*ham 26
向语言添加新关键字会破坏向后兼容性.因此static,在其使用可能意味着某些东西(int arr[static 50]vs int arr[auto 50]或int arr[extern 50])的地方使用,并且根据其在先前版本中的使用,不能在语法上出现在该位置.
虽然在这种情况not_less_than下在该位置添加上下文敏感关键字不会破坏以前的代码,但它会添加另一个关键字(如此简单的文本编辑器,它们是关键字识别但不是语法识别,不知道它是否是关键字),并打破C中的"关键字不是上下文敏感"简化.
| 归档时间: |
|
| 查看次数: |
3336 次 |
| 最近记录: |