C#的static和C++的static有什么区别

junsanrao 2008-11-25 03:41:38
c#中是用static来定义全局变量的,而C++不需要C++的全局变量是怎么定义的啊
举个例子吧,再说下是什么区别,请用中文的啊
非常感谢!
...全文
365 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
cc_net 2008-11-25
  • 打赏
  • 举报
回复
准确的说C#中不存在全局变量,在C#中一切都是类,仍和变量都是在一个类中,你在类外定义一个变量是不正确的。

C#中是不需要申明的,而且声明是会出错的。除非你是调用其他问win32的DLL,要用DLLIMPORT
junsanrao 2008-11-25
  • 打赏
  • 举报
回复
#include
static void fn();//声明静态函数
void main()
{
fn();
}
void fn()//定义静态函数
{
int n=10;
cout<<N<<ENDL;
}
这个声明和定义可以不分开吗???谢谢
Old_Mouse 2008-11-25
  • 打赏
  • 举报
回复
C#中不存在全局变量。static是类似C++中的全局变量。所有的变量和函数都属于某个类所有。
Old_Mouse 2008-11-25
  • 打赏
  • 举报
回复
全局变量都放在,全局存储区。
vrhero 2008-11-25
  • 打赏
  • 举报
回复
C#中不存在全局变量...即使是静态...任何数据都依赖于某个对象存在...
junsanrao 2008-11-25
  • 打赏
  • 举报
回复
那C++中定义全局变量和静态全局变量分配内存空间都分配在哪啊,是堆区还是栈区,还是静态区还是什么区
junsanrao 2008-11-25
  • 打赏
  • 举报
回复
4楼好答案
Old_Mouse 2008-11-25
  • 打赏
  • 举报
回复
可以修饰类。
全局变量和全局静态变量,全局变量需要实例化类才能使用,全局静态变量不需要实例化就可使用。
junsanrao 2008-11-25
  • 打赏
  • 举报
回复
哦,懂了很多,谢谢 你说的只能用于修饰数据成员和函数成员是不是这样
static int n;如果是它能代表全局变量吗,可是好像有个全局变量和全局静态变量的说法,有区别吗?
C#中是不能用static来修饰类对吗?
wuyq11 2008-11-25
  • 打赏
  • 举报
回复
C++的类中,static只能用于修饰数据成员和函数成员(不能修饰构造函数和析构函数),用于该类所具有的信息而不属具体某个对象.
C# static修饰符声明属于类型本身而不是属于特定对象的静态成员。static修饰符可用于类、字段、方法、属性、运算符、事件和构造函数,但不能用于索引器、析构函数或类
junsanrao 2008-11-25
  • 打赏
  • 举报
回复
请来个大侠帮忙。。。。。。

111,125

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧