class Song {
public:
const string getAutherName();
}
void mtm::RadioManager::addSong(const Song& song,const Song& song1) {
if (song.getAutherName() == song1.getAutherName())
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
Invalid arguments ' Candidates are: std::basic_string<char,std::char_traits<char>,std::allocator<char>> getAutherName() ' - passing 'const mtm::Song' as 'this' argument of 'std::string mtm::Song::getAutherName()' discards qualifiers [- fpermissive]
Run Code Online (Sandbox Code Playgroud)
它为什么使用basic_string而不是string!怎么解决这个问题?
我在这里诽谤了一个结构
struct Owner{
char* ownerName;char* fatherName;char* address;};
void registerV(Owner *);
main(){
Run Code Online (Sandbox Code Playgroud)
我在这里初始化所有者
struct Owner owner;
owner.ownerName="Imran Ali";
owner.fatherName="Ali Khokhar";
owner.adress="KhushalPura";
registerV(&owner);
}
Run Code Online (Sandbox Code Playgroud)
在此功能中,我从用户那里获取输入,我必须使用其他功能在主要部分中显示.但是,当我尝试这样做时,我得到了垃圾值
void registerV(struct Owner *ownerPtr)
{
char buyersName[50];
char fatherName[50];
char adress[100];
cin.getline(buyersName, 50);
cout << " Enter Buyers Name : " ;
cin.getline(buyersName, 50);
(*ownerPtr).ownerName=buyersName;
cout << " Enter Fathers Name : " ;
cin.getline(fatherName, 50);
(*ownerPtr).fatherName=fatherName;
cout << " Enter Adress : " ;
cin.getline(adress, 100);
(*ownerPtr).adress=adress;
}
Run Code Online (Sandbox Code Playgroud)
当我尝试从主函数中查看值时,我得到垃圾值.请帮我.