none
让人很纠结的一个问题 RRS feed

  • 问题

  • struct Addesslist one={"liming","3786121",ffc@.qq.com};

    另外的一个方案:

    string bb={"liming","3786121",ffc@.qq.com};

    struct Addesslist one=bb; //不能这么写,这里如果用重载,不知道怎么做,最好不要用strtok; 用下面的方式,谁能给出一段代码吗? thanks Addesslist &Addesslist::operator=(Addesslist *p)

    2011年2月13日 6:40

答案

全部回复

  • Addesslist bb={"liming","3786121","ffc@.qq.com"}; struct Addesslist one=bb;

    而不是

    string bb={"liming","3786121","ffc@.qq.com"}; struct Addesslist one=bb;

    Addesslist &Addesslist::operator=(const Addesslist& value)

    {

    if(this == &value)

    {

    return *this;

    }

    // your copy operation

    return *this;

    }


    麻烦把正确答案设为解答。
    • 已建议为答案 Peter_Yu 2011年2月14日 3:16
    2011年2月14日 2:29
    版主
  • Addesslist bb={"liming","3786121","ffc@.qq.com"}; struct Addesslist one=bb;      //这里={"liming","3786121","ffc@.qq.com"}; 是从网络接收的数据,是动态的,所以只能是string类型,或者用scanf可以转换,其实这就是这个问题的核心的地方

    而不是

    string bb={"liming","3786121","ffc@.qq.com"}; struct Addesslist one=bb;

    Addesslist &Addesslist::operator=(const Addesslist& value)

    {

    if(this == &value)

    {

    return *this;

    }

    // your copy operation

    return *this;

    }

    2011年2月14日 4:41
  • 恩我明白了,我觉得不需要这么麻烦阿,创建出你这个结构体,读一个数据,赋值一个不行么?


    麻烦把正确答案设为解答。
    2011年2月14日 10:04
    版主
  • 所以说回到我的第一个问题:

    string bb={"liming","3786121",ffc@.qq.com};

    struct Addesslist one=bb;       // 这里怎么赋值的问题, 上面string不变

    2011年2月14日 12:44
  • 在Addesslist中,写一个string的构造函数。
    麻烦把正确答案设为解答。
    • 已标记为答案 Honny_yeyh 2011年3月11日 12:27
    2011年3月11日 1:20
    版主
  • 如果按Addesslist &Addesslist::operator=(Addesslist *p),写一个方法的代码,注意到这里跟string一点关系都没有,如何能解决你的问题呢?

    就是说,你想说 网络上来了一些字符串,那么给你地址串的一个指针,将其转化为地址串。

    问题好比

    问题:将字符串通过重载=转化为地址串

    输入 Addesslist *p

    输出 Addesslist 

    输入和输出都与字符串无关,如何能解决你的问题??????!!!!!!!!

    2011年3月11日 8:03
  • 不知道啊,老大你给个具体代码吧,我们跪求

    2011年3月11日 12:28