googlemock - Mache eine Methode, die einen komplexen Datentyp zurückgibt

7

Ich möchte eine Methode vortäuschen, die einen komplexen Datentyp zurückgibt

%Vor%

Dieser Code kompiliert nicht: "macro" MOCK_CONST_METHOD0 "hat 3 Argumente übergeben, benötigt aber nur 2"

Ich denke, dass das googlemock-Makro QMap nicht versteht und das Komma als Parametertrennzeichen interpretiert.

Gibt es eine Möglichkeit, googlemock zu sagen, dass QMap der Rückgabewert ist?

    
Jens Ehrlich 18.04.2012, 10:25
quelle

2 Antworten

16

Verwenden Sie einfach ein typedef wie folgt:

%Vor%     
nabulke 18.04.2012, 10:37
quelle
3

Sie haben Recht, das Komma wird als Parametertrennzeichen interpretiert. Sie können ein Präprozessor-Makro definieren, um zu verhindern, dass das Komma so interpretiert wird.

%Vor%

Bitte beachten Sie, dass dies nicht unbedingt für verschachtelte Makroaufrufe funktioniert. Wenn zum Beispiel MOCK_CONSTANT_METHOD0 den zweiten Parameter an ein anderes Makro übergeben würde, wären Sie wieder in Schwierigkeiten.

    
Markus Mayr 18.04.2012 10:28
quelle

Tags und Links