堆-.net在申明变量的时候,变量是属于什么状态?

问题描述

.net在申明变量的时候,变量是属于什么状态?

如题

今天看了一本书,本人的基础底子还是比较薄弱了,代码写了这么久才有兴趣去看看原理,
Public struct ValPoint
{
Public int x;
Public ValPoint(int x)
{
this.x = x;
}
}

ValPoint vPoint1; //在书上表示这里并没有进行入栈,只有对变量进行了操作后才会算作是入栈

vPoint1.x=1;//也就是这一步的时候才会进行入栈

Console.WriteLine(vPoint.x);//而在这一步的时候,会进行出栈

那么在我声明这个结构的时候,这个结构是被放在哪里了?

解决方案

http://www.tuicool.com/articles/uANNni

解决方案二:

变量一般是在栈中,对象是在堆中

时间: 2024-09-16 14:28:53

堆-.net在申明变量的时候,变量是属于什么状态?的相关文章

java-final变量和普通变量的区别

问题描述 final变量和普通变量的区别 String str1 = "hello2"; final String a = "hello"; String b = "hello"; String c = a + "2"; String d = b + "2"; System.out.println(str1 == c); System.out.println(str1 == d); 结果: true fal

java-在本类中调用自己的成员变量时,变量前也要加this是为什么,其作用是什么

问题描述 在本类中调用自己的成员变量时,变量前也要加this是为什么,其作用是什么 java在本类中使用this指针的作用,感觉加不加this指针运行结果都一样啊,这是怎么回事(在学习写坦克大战项目时,突然想到的问题,求大神教一教) 解决方案 一般来说,this可以省略.可写可不写 有种情况例外: 构造函数 class A { public int x; public A(int x) { this.x = x; //这里为了区分两个都叫x的变量,就要写 } } 解决方案二: 其实也不仅构造函数

浅谈静态变量、成员变量、局部变量三者的区别_java

静态变量和成员变量的区别: A:所属不同  静态变量:属于类,类变量    成员变量:属于对象,对象变量,实例变量 B:内存位置不同  静态变量:方法区的静态区    成员变量:堆内存 C:生命周期不同  静态变量:静态变量是随着类的加载而加载,随着类的消失而消失    成员变量:成员变量是随着对象的创建而存在,随着对象的消失而消失 D:调用不同  静态变量:可以通过对象名调用,也可以通过类名调用    成员变量:只能通过对象名调用 成员变量和局部变量的区别: A:在类中的位置不同  成员变量:

查看服务器所有Application变量、Session变量工具

application|session|变量|服务器 经常写ASP,需要定义Application变量.Session变量,有时要检查正确性.虽然网上有类似得程序,但是发现有很多不足,所以自己写了个.代码如下: <%@LANGUAGE="JavaScript" CODEPAGE="936"%><% Response.Expires = 0; Response.Buffer = true; var tPageStartTime = new Date(

使用Volatile变量还是原子变量

volatile变量 在Java语言中,volatile变量提供了一种轻量级的同步机制,volatile变量用来确保将变量的更新操作通知到其它线程,volatile变量不会被缓存到寄存器或者对其它处理器不可见的地方,所以在读取volatile变量时总会返回最新写入的值,volatile变量通常用来表示某个状态标识. 原子变量: 原子变量是"更强大的volatile"变量,从实现来看,每个原子变量类的value属性都是一个volatile变量,所以volatile变量的特性原子变量也有.

Ruby中类变量和实例变量的比较

  这篇文章主要介绍了Ruby中类变量和实例变量的比较,本文讲解了4点类变量和实例变量的不同之处,并给出了代码实例,需要的朋友可以参考下 1.类变量名以@@开始,一个类变量被这个类所有的实例对象共享;实例变量名以@开始,每个实例对象有各自不同的实例变量; 2.类变量在使用前必须初始化,否则在使用时会报错;而实例变量如果没有初始化,则使用时返回nil; 3.类变量是私有的,在类外无法直接访问,可以通过类方法和实例方法访问; 复制代码 代码如下: class B @@number = 11 @@nu

Linux Shell脚本系列教程(三):变量和环境变量

  这篇文章主要介绍了Linux Shell脚本系列教程(三):变量和环境变量,本文讲解了普通变量.获取字符串的长度.环境变量等内容,需要的朋友可以参考下 一.玩转变量和环境变量 变量是任何一种编程语言都必不可少的组成部分,用于存放各种类型的变量.脚本语言大多是弱类型语言(动态语言),也就是说在使用变量时,不需要事先声明变量的类型,只需要直接赋值就可以.在Bash中,每一个变量的值都是字符串.无论你给变量赋值时有没有使用引号,值都会以字符串的形式存储.有一些特殊的变量会被shell环境和操作系统

java-JAVA中类的实例变量和静态变量的赋值

问题描述 JAVA中类的实例变量和静态变量的赋值 学完了面向对象,回头看项目的时候在这个地方有些不太透,对于类的实例变量和静态变量如何赋值和访问及修改(所描述的赋值访问及修改可能用词不准确,恳请指正)谢谢!!! 解决方案 楼主亲,你可以通过这样的方式去理解静态变量和实例变量:(1)静态变量也称为类变量,语法上面用static修饰,这样的变量在JVM(Java虚拟机)将类加载进去的时候就和类一起被分配了内存,这个时候就已经可以使用了,而不需要等到创建类的实例后才能使用.这类变量可以直接通过"类名.

【转】Shell中脚本变量和函数变量的作用域

 在shell中定义函数可以使代码模块化,便于复用代码.不过脚本本身的变量和函数的变量的作用域问题可能令你费解,在这里梳理一下这个问题. (1)Shell脚本中定义的变量是global的,其作用域从被定义的地方开始,到shell结束或被显示删除的地方为止. 例1:脚本变量的作用域#!/bin/bash#define the function ltx_funcltx_func(){   echo $v1   #modify the variable v1   v1=200 }#define the

内部变量和外部变量就是局部变量和全局变量吗?

问题描述 内部变量和外部变量就是局部变量和全局变量吗? 局部变量和全局变量是从作用域分类的 外部变量就是前面加了extern,这个是从生存期定义的 这个两者应该不能混为一谈 为什么很多地方就默认为内部变量和外部变量就是局部变量和全局变量 这样子的话那么这句话怎么理解呢? 解决方案 首先把对应的外部和内部分别说成是全局和局部,这个内外表示的域(即{})的内外,而不是extern表示的文件的内外.不过确实很多的时候这样的表示由于没有统一的叫法,不同的作者有自己的叫法,常常让读书的人费解.你ppt截图