大侠们请帮忙看看

zlHandler 2009-11-23 02:39:05
public Teacher(string name) : this(name, 2, 5000) { }
这个this是啥意思?
...全文
60 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
showTI 2009-11-23
  • 打赏
  • 举报
回复
public class student
{
public student():this(10)//调用 下面一个带参数的构造函数构造函数(说明:this就是代表这个类本身。)
{

}
  public student(int temp){} //student类的一个构造函数
}
zlHandler 2009-11-23
  • 打赏
  • 举报
回复
简单点说。。。就举一个比如Student类的例子,我看看谁解释的好!
zuoming120 2009-11-23
  • 打赏
  • 举报
回复
d
zhenhua110 2009-11-23
  • 打赏
  • 举报
回复
不太清楚啊!!
guoliwang 2009-11-23
  • 打赏
  • 举报
回复
就你这几句代码就是楼上说的意思!

this:
第一个this的意思是调用Car(int petals)方法的属性petals。
第二个this的意思是实例化Car(String s, int petals)方法中的参数s(this.s = s)。
第三个this是调用Car(String s, int petals)方法的两个参数并传参。

在C#中,this关键字代表当前实例,我们可以用this.来调用当前实例的成员方法,变量,属性,字段等;
也可以用this来做为参数状当前实例做为参数传入方法.
还可以通过this[]来声明索引器

下面是你这段程序的注解:
using System; // 引入使命空间System
namespace CallConstructor // 声明命名空间CallConstructor
{
public class Car // 声明类Car
{
int petalCount = 0; //在Car类中声明一个非静态的整型变量petalCount,初始值为0
未用Static声明的变量叫做静态变量,非静态成员属类的实例,我们只能在调用类的构
造函数对类进行实例化后才能通过所得的实例加"."来访问声明一个非静态的字符串变量s,
初始值为"null"; 注意:s = "null"与s = null是不同的
String s = "null";
Car(int petals) // Car类的默认构造函数
{
petalCount = petals; // Car类的默认构造函数中为 petalCount 赋值为传入的参数petals的值
Console.WriteLine("Constructor w/int arg only,petalCount = " + petalCount); // 输出petalCount
}
Car(String s, int petals)// 重载Car类的构造函数 Car(String s, int petals)的第二个参数
: this(petals) // : this(petals) 表示从当前类中调用petals变量的值来作为构造函数重载方法
{
this.s = s;
Console.WriteLine("String & int args");
}
// 在构造函数中为s赋值
// 非静态成员可以在构造函数或非静态方法中使用this.来调用或访问,也可以直接打变量的名字,因此这一句等效于s = s,
//但是这时你会发类的变量s与传入的参数s同名,这里会造成二定义,所以要加个this.表示等号左边的s是当前类自己的变量
Car() // 重载构造函数,:
: this("hi", 47) // this("hi", 47) 表示调Car(String s, int petals) 这个重载的构造函数,并直接传入变量"hi"和47
{
Console.WriteLine("default constructor");
}
public static void Main()
{
Car x = new Car();
Console.Read();
}
}
}
「已注销」 2009-11-23
  • 打赏
  • 举报
回复
this表示本身类
CXSilence 2009-11-23
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 hdt 的回复:]
调用另一个构造函数
类似

public class a
{
public a():this(10)//调用 a(int temp)
{
}
  public a(int temp){}
}
[/Quote]
string name) : this(name
真相重于对错 2009-11-23
  • 打赏
  • 举报
回复
调用另一个构造函数
类似

public class a
{
public a():this(10)//调用 a(int temp)
{
}
public a(int temp){}
}
整合FileDisk和Filemon的MFC开源码,希望对新手有帮助! 说明:对大侠们可能没什么价值,仅以此献给像我一样的菜鸟! 软件环境和框架: 1.软件环境:VS.net2003 + XP IFS + DS3.2 2.框架:采用MFC框架; 功能: 1.自动加载FileDisk和Filemon的驱动程序部分; 2.用FileDisk生成一个虚拟硬盘,并自动分配盘符; 3.对新生成的虚拟盘符挂接Filemon的过滤驱动; 4.退出时自动卸载FileDisk和Filemon驱动; 不完善的地方(有兴趣的朋友可以完善下,并希望完善后在我这里跟帖上传源码,就算是对我开源的支持,谢谢!): 1.FileDisk生成的虚拟硬盘需要先手动在资源管理器里进行格式化;可以在程序里调用SHFormat之类的启动格式化窗口进行改善,也可以使用第三方提供的格式化函数进行格式化; 2.Filemon目前是应用程序使用按照时间来进行查询的过滤方式,希望能改成驱动程序主动通知应用程序。 ------- 整理后面的回贴后追加的内容 ---------------- 1.在BOOL CMainFrame::Init(void)函数里有段网络通讯的代码,里面访问了我自己建的局域网服务器,大家那里应该是没有的,所以会报错,不好意思!注释或删掉以下内容就好了! CWebWrapper clsWebWrapper; CHttpDataPackage_Receive HttpData_Receive; //Call server function if (clsWebWrapper.PostCommand( _T(""), _T("abcd我你他"), &HttpData_Receive, _T("WebGrab"), this, FALSE, FALSE)) //if (clsWebWrapper.GetCommand( _T(""), _T("abcd我你他"), &HttpData_Receive, // _T("WebGrab"), this, FALSE, FALSE)) { AfxMessageBox(HttpData_Receive.GetContent_DataAll()); } else { AfxMessageBox("网络通讯失败"); return FALSE; } 2.大家如果想看文件过滤出来的信息,可以在BOOL CMainFrame::Init(void)函数里去掉对这句话//m_nTimer = SetTimer( 1, 500/*ms*/, NULL );的注释,那就相当于启动了定时器,然后会有信息显示在子窗口里,,当然我并没有去实现子窗口的滚动,所以子窗口里的内容满了后,就看不到最新的信息了,,哈哈,,我实在是没时间啊,,公司里的项目这2天在出演示版呢,,,忙啊。。。。大家自己加加代码哈,,,这也是个不完善的地方,希望完善了的朋友,,上传下代码啊,,,多谢! 3.另外,下载使用了的朋友,有空的话来帮忙说下使用上有没有问题啊,如果有问题,我好及时做修改啊,谢谢了!如果可以用的话,有空就帮忙回个贴,说可以用,这样别的朋友就知道这个代码是可以用的,免得大家还以为下了个不能用的东东,那不是郁闷死了!先谢谢了! ------------- 最新补充说明 ------------------- 1.FileDisk和Filemon我用的都是比较老的版本了,FileDisk是2004年的,Filemon是4.34 ;FileDisk的作者在其网站上已经出了新版本了,是2006年的,我下载了,还没时间看过,所以大家有空也可以整合2006的驱动来替换我的老版本,毕竟老版本是可能有些不完善的地方的;而Filemon则没有再继续开放源码,,所以如果有朋友有幸获得了新版本的源码,能不能上传个,,多谢了! 2.Filemon.exe会自动在其目录下创建File.img文件做为虚拟磁盘使用的文件,大家只要手动格式化一次创建出来的虚拟磁盘,以后就不用再格式化,可以不断使用了,所以以后大家要是做成产品的话,可以直接把已经格式化好的对应的File.img文件一起打包到安装包里,呵呵! 3.我放弃了FileDisk中对CDROM部分的支持,以及Filemon中对Win9x的VxD驱动的支持,如果有朋友需要的话,可以自行添加!

62,242

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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