创建了一个新类,如果调用这个新类的成员变量的话,直接把新类对象实例化,然后新类.m_str
,这样调用不就行了吗?为什么我看别人写的代码,还要在新类的头文件定义几个
字符串CSTRING函数,用这个函数返回成员变量的值,请问下这样不是多此一举吗?跟
我用的方法有什么区别呢?
通过函数返回成员变量值的目的是隐藏类实现的细节,这也是面向对象的特点。
变量隐藏,这是最基本的面相对象思想,不让别人知道你设计的细节,直接调用接口就可以克
不要直接返回栈上的局部变量,因为堆栈会在函数返回后销毁。
如果愿意把m_str 公开出来。那么你的做法可以。但考虑c++的封装性。一般不会public变量。而是通过成员函数方式来返回字符