为什么在一个类的方法里面给一个string赋值为整型却不报错,但是在类外这样操作就会报错,如果输出的话没有东西输出
这是编译器得bug吗?还是语法的问题?
这是C++的语言特性而非编译器的bug。在C++中,可以将整型变量转换为字符串类型,这是通过将整型变量赋值给一个string对象来实现的.但是不应该没输出呀。
从理论上来说,C语言中的类并不是原生支持的,因此可能存在不同编译器对于类的实现方式不同的情况。C语言中对于字符串的处理是比较灵活的,可以将字符串的地址强制转换为整形地址,这样就可以通过整型来访问字符串的内存。不过这样做是非常危险的,可能会导致内存错误的发生,因此不建议这样做。综上,可能是编译器的实现方式和语法限制导致的。
name是private的,class外不可访问的