小编Gle*_*lem的帖子

错误:传递const xxx,因为xxx的这个参数会丢弃限定符

我有一个问题将我的仿函数从windows移植到linux.(传递给stl :: map的仿函数用于严格弱序)原文如下:

struct stringCompare{ // Utilized as a functor for stl::map parameter for strings 
    bool operator() (string lhs, string rhs){ // Returns true if lhs < rhs
        if(_stricmp(lhs.c_str(), rhs.c_str())  < 0) return true;
        else return false;
    }
};
Run Code Online (Sandbox Code Playgroud)

由于linux不支持_stricmp但是使用strcasecmp,我将其更改为:

struct stringCompare{ 
    bool operator() (string lhs, string rhs){ // Returns true if lhs < rhs
        if(strcasecmp(lhs.c_str(), rhs.c_str())  < 0) return true;
        else return false;
    }
};
Run Code Online (Sandbox Code Playgroud)

它现在抱怨"const"参数:

passing const stringCompare as this argument of bool stringCompare::operator()  
(std::string, std::string)â discards qualifiers …
Run Code Online (Sandbox Code Playgroud)

c++ parameters compiler-errors const functor

6
推荐指数
1
解决办法
8169
查看次数

nodeCommand等效于nodejs-native-mongodb

我正在尝试从nodejs中使用MongoDB 2.4实验文本搜索功能.唯一的问题是,就我所知,native nativejs mongo驱动程序似乎不支持集合级runCommand.

Mongo shell语法如下所示:

db.collection.runCommand( "text", { search : "Textvalue" } );
Run Code Online (Sandbox Code Playgroud)

它出现了一个db.command/db.executeDbCommand函数,但我不知道如何选择一个集合并使用它运行text命令(如果可能的话),因为它需要在集合级别而不是数据库级别.

任何帮助,将不胜感激

mongodb node.js node-mongodb-native

5
推荐指数
1
解决办法
6139
查看次数

将继承的类传递给c ++中的函数

我在C++中继承有一点问题,我无法弄清楚.

所以,假设我有一些从stl列表派生的类,即:

class Class1: public list<T>{
      virtual func1();

}

class Class2 : public Class1<w/e>{
         func1();
}
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是将这些问题传递给函数.我如何正确地将其中一个的实例传递给一个函数,以便它可以使用正确的虚函数,如果任何一个类型的实例都可以传递?我有一段时间没有完成继承和虚函数,所以我在这里有点生疏.(这假设函数不是类的成员函数).

c++ inheritance virtual-functions

2
推荐指数
1
解决办法
2148
查看次数