小编cat*_*eof的帖子

std :: chrono将天数添加到当前日期

我想使用std :: chrono,以便根据到期时间来计算未来的日期.

到期时间是一个整数,指定"从现在起的天数".那么如何使用chrono lib来查找100天后的日期呢?

c++ c++11 c++-chrono

3
推荐指数
2
解决办法
3458
查看次数

vim编辑器,使用日志文件导航源代码

这个问题可能非常抽象,所以请提前道歉.

我有一个日志文件,其中包含符合某种模式(文件名,行,函数,跟踪语句)的行.例如

file1.cpp, 12, function1, "we are in function 1"
file2.cpp, 104, add, "add function"
another_file.cpp, 300, function2, "This is a trace"
Run Code Online (Sandbox Code Playgroud)

我想要的是vim编辑器分成两个窗口.一个窗口有日志文件,每次我将光标移动到一条跟踪线,另一个窗口将在正确的代码行中打开实际文件.

例如,在顶部窗口中,我的光标在线

file2.cpp, 104, add, "add function"
Run Code Online (Sandbox Code Playgroud)

第二个(vim在两个窗口中分割)窗口打开第104行的file2.cpp(在第二个窗口的中心).

有没有机会使用结构化文件(日志文件)作为源代码的"导航器"?如果是的话,我们怎么能在vim中做到这一点?如果没有,让我们做吧!(但我不想重新发明轮子:-))

vim logging

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

Linux中的STL容器和线程(并发写入)

我正在寻找使用STL容器(如std :: map和std :: vector)和pthreads的最佳策略.

什么是规范的方式?一个简单的例子:

std::map<string, vector<string>> myMap;
Run Code Online (Sandbox Code Playgroud)

我们如何保证并发?

mutex_lock;
write at myMap;
mutex_unlock;
Run Code Online (Sandbox Code Playgroud)

另外,我想知道pthreads和STL在一起使用时是否会遇到性能问题.

系统:Liunx,g ++,pthreads,没有提升,没有Intel TBB

c++ linux concurrency stl pthreads

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

我可以将 libxml2 导入 Visual Studio 2013

我正在为 C# 项目创建自定义 SOAP 解析器。

我想将 libxml2 (一个纯 c 库)导入到我的项目中。这可行吗?

.NET 中有 C# 替代品吗?有 libxml2 的 C# 端口吗?

.net c# libxml2 visual-studio visual-studio-2013

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

从命令行开始?

我有一个在Linux系统上运行的简单C/CPP进程.这是a.out.

另一个进程能够在其代码中启动a.out.这是b.out.

在a.out中我需要什么代码才能理解它是从命令行执行的?例如./a.out

有没有办法知道它是从cmd开始还是从另一个进程启动?

c c++ linux

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

[CFString保持]:消息发送到释放

I enabled zombies with my Xcode to find if my process crashes to a memory leak. Here is a code snippet:

- (NSString *)facVersion
{
    return facVersion;
}


- (void) setFacVersion:(NSString*)_facVersion
{
    if(facVersion != nil) [facVersion release];
    facVersion = [_facVersion retain];
}
Run Code Online (Sandbox Code Playgroud)

Now when I call

NSLog(@"%@", facVersion);
[self setFacVersion:facVersion];
Run Code Online (Sandbox Code Playgroud)

the code crashes with the message

[CFString retain]: message sent to deallocated

Do you know what the problem is?

xcode memory-management ios

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

AppStore iOS警告ITMS-9000"遗留语言指示符"

我在应用商店提交iOS应用时收到以下警告.

警告ITMS-9000"传统语言指示符 - 位于(我的app/English.lproj)的目录使用遗留语言指示符.不推荐使用完整语言名称,但不保证在未来版本的OS中可以使用."

有没有人收到这个,我该如何解决?

iphone app-store appstore-approval ios

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

复制并修改shared_ptr

我想知道如何“复制”shared_ptr 并修改内容。

在下面的示例中,创建了一个“模板人”,我想将其用作每个人都会从中复制的“人”。然而,当 std::shared_ptr p2 被分配给 template_person 时,p2 中的每个修改也会影响 template_person 。有没有办法避免这种情况,或者我应该使用普通指针?

这是我的第一个方法。我想这样做是为了消耗更少的内存。

#include <iostream>
#include <memory>
#include <string>

class Person{
public:
    ~Person() {}
    Person(int a, std::string b) : age_(a), name_(b) {}

    void set_age(int x) { age_ = x; }
    int age() { return age_; }

private:
    int age_;
    std::string name_;
};

int main () {

    std::shared_ptr<Person> template_person = std::make_shared<Person>(10, "test");

    std::shared_ptr<Person> p2 = template_person;

    p2->set_age(20);

    std::cout << p2->age() << " " << template_person->age() << std::endl;
    //prints 20 20

    return 0; …
Run Code Online (Sandbox Code Playgroud)

c++

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

从std :: future <void>转换为非标量std :: future <bool>引发的错误

该方法validate(std::string& request, int& id)返回bool.

当我使用这种语法时,编译完成:

auto task_1 = std::async([&]{ validate(request, id); });
Run Code Online (Sandbox Code Playgroud)

但是,当我使用时std::future<bool>,编译失败:

std::future<bool> task_1 = std::async([&]{ Internal::validate(request, id); });
Run Code Online (Sandbox Code Playgroud)

错误是:

错误:请求从' std::future<void>' 转换为非标量类型' std::future<bool>'

这有什么不对?我想检查一下:

task_1.get() == true
Run Code Online (Sandbox Code Playgroud)

c++ c++11 c++14

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

使用C++读取和打印文本文件时出错

我的代码有错误(问题末尾的代码).我的C++可执行文件的目的是读取包含数字的文件,将其复制到std :: vector中,然后只打印stdout中的内容?问题出在哪儿?(ATOI?)

我有一个简单的文本文件,其中包含以下数字(每行有一个数字)

mini01:algorithms ios$ cat numbers.txt 
1
2
3
4
5
Run Code Online (Sandbox Code Playgroud)

当我执行程序时,我再收到一行:

mini01:algorithms ios$ ./a.out 
1
2
3
4
5
0
Run Code Online (Sandbox Code Playgroud)

为什么我在标准输出中获得第6行?

#include <iostream>
#include <string>
#include <fstream>
#include <vector>
using namespace std;

void algorithm(std::vector<int>& v) {

    for(int i=0; i < v.size(); i++) {
        cout << v[i] << endl;
    }

}

int main(int argc, char **argv) {

    string line;
    std::vector<int> vector1;
    ifstream myfile("numbers.txt");
    if ( myfile.is_open()) {
        while( myfile.good() )
        {
            getline(myfile, line);
            vector1.push_back(atoi(line.c_str()));
        }
        myfile.close();
    }
    else …
Run Code Online (Sandbox Code Playgroud)

c++

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

C++ 时间(而非日期)周期

我想检查当前时间(在 C++ 中)是否在某个时间范围内。

我想从元组(“12:00”,“17:30”)构造时间范围,即(字符串,字符串)并检查时间 now() 是否在两者之间。

有什么好的方法可以做到这一点吗?我不想检查日期,即我不在乎这一天是星期一还是十月。我只关心时间。

c++

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

在MySQL数据库中添加约束以保证唯一性

我的SQL表具有以下DDL

CREATE TABLE `new_table` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `family_id` int(11) NOT NULL,
  `name` varchar(45) NOT NULL,
  PRIMARY KEY (`id`)
  ) 
Run Code Online (Sandbox Code Playgroud)

我想在这个简单的表格中保留姓氏.为了做到这一点,我有一个微服务,调用者通过JSON发送家庭细节:

{
  "family_id" : 1,
  "names": ["name1", "name2"]
}
Run Code Online (Sandbox Code Playgroud)

id是通过MySQL的自动增量生成的.

所以上面的JSON最终会触发两个insert语句:

  • insert(family_id,name)values(1,name1)
  • insert(family_id,name)values(1,name2)

当新请求附带表中存在的family_id时,就会出现问题.这不应该被允许,我正在进行查询以搜索family_id是否存在.如果存在则引发异常.如何避免此查询?如果需要,可以更改表模式.如果可以添加类似"请求ID"或guid来建立每个请求的唯一性,那会没关系吗?

所有数据应该在同一个表中.

下面是一些带有一些数据的表的例子

在此输入图像描述

(来自评论)我无法创建第二个表.Eveything应保存在一张桌子上.

mysql sql database

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

C++如何在运行时定义类?

我们的想法是在C++中在运行时创建对象.

此创建的输入将是一个json文件.例如

{
  "pi": 3.141,
  "happy": true,
  "name": "Niels",
  "nothing": null,
  "answer": {
    "everything": 42
  },
  "list": [1, 0, 2],
  "object": {
    "currency": "USD",
    "value": 42.99
  }
}
Run Code Online (Sandbox Code Playgroud)

在C++中有什么选择?可以加强对此的帮助吗?

c++ boost

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