私はちょうど興味があります、私はここで何が起こっているのか知りたいです:
class Test
{
char * name;
public:
Test(char * c) : name(c){}
};
1) なぜ機能しないTest(const char * c) : name(c){}
のですか? char * name
constじゃないから?しかし、これはどうですか:
main(){
char * name = "Peter";
}
name
はchar*ですが、"Peter"
constはchar*ですよね?では、その初期化はどのように機能するのでしょうか。
2) Test(char * c) : name(c){ c[0] = 'a'; }
- これによりプログラムがクラッシュします。なんで?
無知で申し訳ありません。