小弟请问了:我自己编了一个 CString 类
与 VC 的 CString 类重名,
我想用自己的CString类,不用 VC 的,
怎么做?
难道一点要我改名了吗?

解决方案 »

  1.   

    你可以不加载带有CString类的头文件,,不过我也不知道是哪个,而且这不是个好方法,那个文件里面不止定义了CString这一个类,你不会自己改名字啊,,,,,,,,改个其他名字不行啊,,
      

  2.   

    namespace,指定命名空间,或者::
      

  3.   

    还是改名吧,或加上一个不同的前缀。
    一来别人不会误会你以为是MFC的类;
    二来跟系统的类作对是VC的大忌,不太稳定。
      

  4.   

    不用改名字,使用namespace.这是c++用来解决命名冲突的好办法。
    1.define/////string.h
    ...
    using namespace mylib;namespace mylib{class CString
    {
    ...
    }
    class other
    {
    }
    }//////String.cpp
    #include "..\mylib\include\string.h"using namespace mylib;CString::CString()
    {
    }
    ....//endof file2. use
    #include "..\mylib\include\string.h"
    using namespace mylib;
    int main()
    {
        mylib::CString str;
        str.Methods();
        ....
    }
      

  5.   

    谢谢大家
    呵呵
    通过表决,我决定改名了
    也很感谢 bestest,这种方法也值得参考.