注册 登录
编程论坛 VC++/MFC

如何对类中字符串属性进行字符串比较

小超° 发布于 2013-10-15 13:15, 636 次点击
eg.
//定义了一个Adult类
class Adult
{
public:

    void set_Adult();                //从文件中读入数据到对象中的函数
    void show_Adult();                //将对象信息显示在屏幕上:为了自己测试的时候用的

    int age;                 //1.年龄:age
    string Wclass;        //2.工作:workclass
    int Fnlwgt;                /*3.这个不懂是什么*/
    string Edu;        //4.教育:education
//然后定义一个Adult对象:person.
Adult person.
我想进行 if(strcmp(person.Wcalss,person.Edu)==0)
          {......}
会出现报错。

我想求解该如何才能进行这种比较。
3 回复
#2
yuccn2013-10-15 16:58
改成if(strcmp(person.Wcalss.c_str(),person.Edu.c_str()) 看看
#3
toofunny2013-10-20 00:55
C++的string类直接比较person.Wcalss == person.Edu 就行了,用strcmp纯粹多此一举
#4
潇翊2013-10-22 23:03
程序代码:
//你给的代码片段没法运行验证,我稍作修改,运行无误,代码如下:
#include<iostream>
using namespace std;
#include<string>
//定义了一个Adult类
class Adult
{
public:
    void set_Adult();                //从文件中读入数据到对象中的函数
    void show_Adult();                //将对象信息显示在屏幕上:为了自己测试的时候用的
    int age;                 //1.年龄:age
    string Wclass;        //2.工作:workclass
    int Fnlwgt;               
    string Edu;
    void show(){
        if(Wclass==Edu){          //同意楼上,直接判断,但是要加#include<string>
            cout<<"ok"<<endl;}
    }
};
int main(){
    Adult person;//定义对象
    person.show();
    return 0;
}
1