小编Ben*_*ley的帖子

如何将dir和所有子目录中的所有文件与一组特定的扩展名复制到另一个目录?

具体来说,我想编写一个powershell脚本,以递归方式从目录X和X的所有子目录中查找具有extensions.lib和.dll的每个文件.然后我想将它们复制到目录Y.所有文件应该直接放在Y中,不要复制X的目录结构.

windows powershell

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

如何获得_bstr_t的长度

我正在使用以下命令将wstring复制到_bstr_t:

_bstr_t name;           
SysFreeString(name);   // Free previous string, if any.
name = SysAllocString(Member[k].Membername);
Run Code Online (Sandbox Code Playgroud)

在我使用"名称"之前,我想检查它是否包含至少5个字符.换句话说,我想检查一下它的长度.

我没有找到"countof"或"len"或类似的东西.有人有想法吗?

谢谢,隆比

c++ windows string

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

如何在std :: vector <strings>中查找重复项并返回一个std :: list,它们按字母顺序排序,不会在结果列表中重复

我有一个名为Wordd的类,它有一个成员word_,它是一个std :: list

我试图在该word_中找到重复项,并返回一个按字母顺序排列的列表,在返回的列表中没有重复项.到目前为止,我的代码编译和链接,但超时,可能是由于一些内部内存泄漏等.

class FindDuplicatesFunctor
{
public:
    std::list<std::string> list;
    std::vector<std::string> word_;
    FindDuplicatesFunctor(std::vector<std::string> words): list(0), word_(words){};
    void operator()(std::string const& str)
    {

        if(std::count(words_.begin(), words_.end(), str) > 1 && std::count(list.begin(), list.end(), str) == 0)
        {
            list.push_back(str);
        }
        list.sort();

    }
};
std::list<string> Wordd::FindDuplicates() const
{
    FindDuplicatesFunctor cf(word_);
    return std::for_each(words_.begin(), words_.end(), cf).list;
}
Run Code Online (Sandbox Code Playgroud)

任何想法为什么它没有执行其任务?

预先感谢您的帮助!

c++ stl

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

简单的代码行

此代码用于列出字符串(Kh,6c,5h等)中的卡牌组(从51开始为0),反之亦然.

我已为它编写代码,但似乎很长.有没有更有效的方式来写这个?

我也想这样做,将一个字符串发送到一个函数并得到一个int.

std::string Card::getString(int card) {
    std::string cardstring;

    switch (card) {

    case 0:
        return "2c";
    case 1:
        return "3c";
    case 2:
        return "4c";
    case 3:
        return "5c";
    case 4:
        return "6c";
    case 5:
        return "7c";
    case 6:
        return "8c";
    case 7:
        return "9c";
    case 8:
        return "Tc";
    case 9:
        return "Jc";
    case 10:
        return "Qc";
    case 11:
        return "Kc";
    case 12:
        return "Ac";
    case 13:
        return "2d";
    case 14:
        return "3d";
    case 15:
        return "4d";
    case 16:
        return "5d"; …
Run Code Online (Sandbox Code Playgroud)

c++

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

无法推断模板参数

我试图用std::transform两个相等大小的向量合并成一对向量.

int main()
{
    vector<string> names;
    // fill it with names    
    vector<int> nums;
    // fill it with numbers

    typedef pair<int,string> Pair_t;
    vector<Pair_t> pv;

    transform(nums.begin(), nums.end(),
              names.begin(), back_inserter(pv),
              make_pair<int,string>);
}
Run Code Online (Sandbox Code Playgroud)

VC10给了我:

'_OutIt std::transform(_InIt1,_InIt1,_InIt2,_OutIt,_Fn2)' : could not deduce template argument for '_OutIt' from 'std::back_insert_iterator<_Container>'
          with
          [
              _Container=std::vector<Pair_t>
          ]
Run Code Online (Sandbox Code Playgroud)

那么为什么不能推导出模板参数呢?我该如何解决?

c++ templates

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

使用ostream operator <<打印字符串时,为什么空格不作为分隔符?

我知道在编写代码时std::cin >> some_var;,some_var是一个字符串变量,只输入输入的第一个字some_var.但我不明白为什么std::cout << "something here";不输出"东西".我错过了什么吗?

c++ string iostream delimiter

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

一天增加一定时间?

我希望增加使用一天中的特定时间(MFC类)CTimeCTimeSpan.我的目标是使用CTimeSpan将time1()中给出的时间增加一天CTime time1.

我如何链接

CTime time1(2012, 4, 1, 1, 0, 0);
Run Code Online (Sandbox Code Playgroud)

CTimeSpan span1(1, 0, 0, 0);
Run Code Online (Sandbox Code Playgroud)

所以CTimeSpan::CTimeSpan使用time1给出的日期将日数增加1?

c++ mfc

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

等效C字符串的语法不同?

char s[] = "hello world";
char s[] = {'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd', 0};
Run Code Online (Sandbox Code Playgroud)

这两行代码在C++中是等效的吗?

c++ arrays string null character

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

如何初始化a:set <pair <string,string >>?

在c ++中,所以我需要使用以下内容:

set<pair<string, string>> info;
Run Code Online (Sandbox Code Playgroud)

设置信息中包含字符串对.如何初始化此信息变量?我不需要将其初始化为任何特定的东西.但只是为了初始化?

例如:

int i = 0;
Run Code Online (Sandbox Code Playgroud)

c++

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

对结构列表进行两次C++排序

我有一个结构列表,其中显示了不同的数据类型.

struct sample
{
    int nVal;
    string strVal;
    string strName;         
};
Run Code Online (Sandbox Code Playgroud)

现在我按照nVal对该列表进行排序

bool sortList(const sample& a, const sample& b) // comparison function
{
    return a.nVal< b.nVal;
}
std::sort(sample.begin(), sample.end(), sortList);
Run Code Online (Sandbox Code Playgroud)

现在我的要求是根据结构中的字符串值对相同的列表进行排序,但它不应该影响第一个排序,即关于int值.请建议我一种方法来实现结构的sorthing而不影响以前的排序.提前致谢.

c++ sorting algorithm

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