为什么我没有定义构造函数也没报错,正常执行了~~
代码如下:控制台程序,真的很奇怪,高手帮忙分析下
using System;
using System.Collections.Generic;
using System.Text;
namespace BaseSample
{
class Program
{
static void Main(string[] args)
{
Person my = new Student( "王 ", 19);
}
}
class Person
{
private string name;
private uint age;
public Person(string sname, uint uage)
{
this.name = sname;
this.age = uage;
Console.WriteLine(name);
Console.WriteLine(age);
}
}
}
------解决方案--------------------不懂,是奇怪
------解决方案--------------------public Person(string sname, uint uage)
{
this.name = sname;
this.age = uage;
Console.WriteLine(name);
Console.WriteLine(age);
}
请问这是什么?
------解决方案-------------------- 楼上这位,难道这就是传说中的构造函数!!
------解决方案--------------------楼主是用vs2005开发的?vs2005 会默认自动帮你构建
public Person()
{
}
这个构造函数的
------解决方案--------------------每个类都有构造函数,即使我们没有声明它,编译器也会自动地为我们提供一个默认的构造函数。实际上,任何构造函数的执行都隐式地调用了系统提供默认的构造函数base().
如果我们在类中声明了如下的构造函数,
C(....){..}
它等价于
C(....):base(){....}
------解决方案--------------------呵呵.