2016-07-21 5 views
-2

私はしばらくそれを理解しようとしていましたが、解決策を見つけることができました。エラーC3867 'DataBase :: isUserAndPassMatch':標準ではない構文。 '&'を使用してメンバへのポインタを作成します

if(DataBase::isUserAndPassMatch(u->getUsername(), " ")){} 

私はエラーC3867を得る:

は、私は別のcppファイルにこのコード行を記述する場合。私は空の文字列( "")にu-> getUsername()を切り替えようとしましたが、同じエラーです。

if(&DataBase::isUserAndPassMatch(u->getUsername(), " ")){} 

がisUserAndPassMatch:あなたはisUserAndPassMatchメンバ関数を呼び出したい場合は、あなたがする必要がある

class DataBase { 
public 
    bool isUserAndPassMatch() {return true;} 
}; 

bool DataBase::isUserAndPassMatch(std::string username, std::string password){} 
+0

コードの最初のビットに ')'がありません。 'if(DataBase :: isUserAndPassMatch(u-> getUsername()、")) ' – NathanOliver

+0

ちょうどそれを見た。しかし、問題を解決しなかった –

答えて

2

あなたはクラス定義があると私はまた、これを試してみましたオブジェクトを持っている:

DataBase db; 
if(db.isUserAndPassMatch()) { 
} 

お試しください。

関連する問題