چنین موردی در ++C پیش بینی نشده، ساختار switch در زبان ++C برای مقایسه کردن یا یک مقدار واحد طراحی شده،با سلام خدمت همه دوستان!
سوالم اولم اینه که چطور میشه متغیر هایی که از جنس کلاس ها هستند را با ساختارهای شرطی switch مقایسه کرد؟
مثلا چطور میشه متغیری که از جنس string هستش رو در switch بررسی کرد؟هرکاری که میکنم ++c ارور میده.
ممنون میشم اگه بهم کمک کنید
#include <iostream>
#include <string>
using namespace std;
int CompareString(string s, string p[])
{
int i;
for (i = 0; p[i].length() > 0; i++)
if (p[i].compare(s) == 0)
return i;
return -1;
}
int main()
{
string s = "third";
string p[] = {"first", "second", "third", "fourth", ""};
switch (CompareString(s, p))
{
case 0:
//first
break;
case 1:
//second
break;
case 2:
//third
break;
case 3:
//fourth
break;
default:
//none
break;
}
return 0;
}