无论是C++中还是Java中,都必须相同,这是个死规定,至于理由,看看《think in c++》中的解释: 接下来的问题是这个函数叫什么名字。这必须考虑两点,首先这个名字不能与类的其他成员函数冲突,其次,因为该函数是由编译器调用的,所以编译器必须总能知道调用哪个函数。S t r o u s t r u p的方法似乎是最容易也是最符合逻辑的:构造函数的名字与类的名字一样。这使得这样的函数在初始化时自动被调用。
public class example{ public static void main (String args[]){
String s("dgdgdgd"); int i; for(i=s.slength();i>0;i++) System.out.println(s.charAt(i-1)); } } 上面的程序中,我觉得String s("dgdgdgd")应该是一个构造函数吧。
接下来的问题是这个函数叫什么名字。这必须考虑两点,首先这个名字不能与类的其他成员函数冲突,其次,因为该函数是由编译器调用的,所以编译器必须总能知道调用哪个函数。S t r o u s t r u p的方法似乎是最容易也是最符合逻辑的:构造函数的名字与类的名字一样。这使得这样的函数在初始化时自动被调用。
public static void main (String args[]){
String s("dgdgdgd");
int i;
for(i=s.slength();i>0;i++)
System.out.println(s.charAt(i-1));
}
}
上面的程序中,我觉得String s("dgdgdgd")应该是一个构造函数吧。
可以这样写吗?这是C++里的格式吧?
怎么是ctor呢?
example()才应该是!
怎么是ctor呢?
example()才应该是!
对啦,这是默认构造函数,可以有系统自动生成