小编Col*_*ton的帖子

使用类内部的比较函数进行sort()的问题

如果你看看我的功能CardCompare在课堂内...它不起作用!但是,如果我改为使用Hand.cpp中注释掉的函数,它的工作原理非常好.为什么是这样?

另外,我想知道如果可能的话,将CardCompare函数保留在我的手类中比将它保留在Card类中更没意义.

Hand.h

#ifndef HAND_H
#define HAND_H

#include <vector>
#include "Card.h"

class Hand {
    private:
        std::vector<Card> hand;
        int total;
        void CalculateTotal();
        bool CardCompare (Card i, Card j) {return ( i.RankInt() < j.RankInt() ); }//Does not work! :O
    public:
        Hand() {
            total = 0;
        }
        std::vector<Card> GetHand() const{ return hand;};
        void PrintHand();
        void AddToHand(Card c);

};



#endif
Run Code Online (Sandbox Code Playgroud)

Hand.cpp

#include "Hand.h"
#include <iostream>
#include <algorithm>

void Hand::CalculateTotal() {
    for (int i = 0; i < hand.size(); i++) {
            std::cout << hand[i].ToString() << …
Run Code Online (Sandbox Code Playgroud)

c++

4
推荐指数
1
解决办法
9640
查看次数

标签 统计

c++ ×1