小编Dra*_*ter的帖子

为C++配置Vim

我想让vim成为我的C++编辑器.我使用它的经验很少,需要帮助配置vim才能使用C++.我需要这样的功能

  • 代码完成(对于stl和我的类)
  • 在.cc和.h文件之间切换
  • 你可能会有更多技巧,C++和vim大师.

也许你可以提供一些配置(有解释),或链接到教程,我可以使用的插件?

c++ vim configuration

106
推荐指数
2
解决办法
7万
查看次数

Vagrant Box上的厨师:找不到加密数据包的秘密

使用(托管)厨师配置流浪盒时,我收到以下错误:

No such file or directory - file not found '/tmp/encrypted_data_bag_secret'
Run Code Online (Sandbox Code Playgroud)

这是导致错误的调用:

ssl = Chef::EncryptedDataBagItem.load("ssl", s[:id])
Run Code Online (Sandbox Code Playgroud)

我也找不到encrypted_data_bag_secret/etc/chef哪里它一般存在于我其他服务器.

我错过了上传数据包秘密的配置吗?

这是堆栈跟踪的其余部分:

[2013-02-14T16:51:15+00:00] ERROR: Running exception handlers
[2013-02-14T16:51:15+00:00] FATAL: Saving node information to /srv/chef/file_store/failed-run-data.json
[2013-02-14T16:51:15+00:00] ERROR: Exception handlers complete
[2013-02-14T16:51:15+00:00] FATAL: Stacktrace dumped to /srv/chef/file_store/chef-stacktrace.out
[2013-02-14T16:51:15+00:00] FATAL: Errno::ENOENT: No such file or directory - file not found '/tmp/encrypted_data_bag_secret'
Run Code Online (Sandbox Code Playgroud)

chef-infra vagrant

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

如何从HostType("Moles")测试中读取UnitTest项目的App.Config

我有以下测试:

[TestClass]
public class GeneralTest
{
    [TestMethod]
    public void VerifyAppDomainHasConfigurationSettings()
    {
        string value = ConfigurationManager.AppSettings["TestValue"];
        Assert.IsFalse(String.IsNullOrEmpty(value), "No App.Config found.");
    }

    [TestMethod]
    [HostType("Moles")]
    public void VerifyAppDomainHasConfigurationSettingsMoles()
    {
        string value = ConfigurationManager.AppSettings["TestValue"];
        Assert.IsFalse(String.IsNullOrEmpty(value), "No App.Config found.");
    }
}
Run Code Online (Sandbox Code Playgroud)

它们之间的唯一区别是[HostType("Moles")].但第一次传球,第二次传球失败.如何从第二次测试中读取App.config?

或者我可以在其他地方添加另一个配置文件?

c# unit-testing mstest moles

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

任何枚举类型的C++ 11哈希函数

我正在为我的对象编写一个哈希函数.由于所有STL容器的Generic Hash功能,我已经可以散列容器并组合散列.但我的课程也有枚举.当然我可以为每个枚举创建一个哈希函数,但这似乎不是一个好主意.是否可以为其创建一些通用规范std::hash,以便它可以应用于每个枚举?类似的东西,使用std::enable_ifstd::is_enum

namespace std {
  template <class E>
  class hash<typename std::enable_if<std::is_enum<E>::value, E>::type> {
  public:
    size_t operator()( const E& e ) const {
      return std::hash<std::underlying_type<E>::type>()( e );
    }
  };
};
Run Code Online (Sandbox Code Playgroud)

PS.此代码无法编译

error: template parameters not used in partial specialization:
error:         ‘E’
Run Code Online (Sandbox Code Playgroud)

c++ enums templates hash-function c++11

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

STL中使用的设计模式(标准模板库)

我正在学习STL和设计模式.我想知道是否有任何文档或链接解释如何在STL中实现设计模式我做谷歌但无法获得太多数据

c++ design-patterns stl

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

Jenkins插件:以编程方式创建新作业

如何在插件中创建新的Jenkins作业?

我有一个Jenkins插件,它可以监听消息队列,当消息到达时,会触发一个新事件来创建一个新作业(或者开始一个运行).

我正在寻找类似的东西:

Job myJob = new Job(...);
Run Code Online (Sandbox Code Playgroud)

我知道我可以使用REST API或CLI,但由于我在插件中,我会使用java内部解决方案.

hudson jenkins jenkins-plugins

8
推荐指数
2
解决办法
5286
查看次数

Maven:根据配置文件选择父项目

我有一个 Maven 项目 - 它是 jenkins 的插件。它的父级应该是:

<parent>
  <groupId>org.jenkins-ci.plugins</groupId>
  <artifactId>plugin</artifactId>
  <version>1.414</version>
</parent>
Run Code Online (Sandbox Code Playgroud)

但同时这个插件也可以用于hudson,无需更改任何代码行。但它的父项目应该是:

<parent>
  <groupId>org.jvnet.hudson.plugins</groupId>
  <artifactId>hudson-plugin-parent</artifactId>
  <version>2.0.1</version>
</parent>
Run Code Online (Sandbox Code Playgroud)

我可以为此指定 2 个不同的配置文件并使用它们相应地为 jenkins 或 hudson 构建插件吗?所以我这样称呼:

mvn package -P jenkins
Run Code Online (Sandbox Code Playgroud)

或者

mvn package -P hudson
Run Code Online (Sandbox Code Playgroud)

我尝试在配置文件中指定属性,但这些属性不会被<parent>标记内的值替换。那么是否有其他可能性为两者构建插件,但使用尽可能多的通用代码和文件?

补充:那么,如果我不能这样做,我该怎么办?如何重构?新的结构应该是什么样的?

profiles pom.xml maven

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

为不同的服务器组织厨师烹饪书

我有几个不同的服务器用于不同的目的.每个人都使用mysql,但它应该配置有点不同.=>不同的用户,不同的数据库.

我有一个安装mysql的食谱.

问题是,我应该在哪里放置为mysql创建数据库和用户的脚本?

应该是:

  1. mysql cookbook中每个服务器(角色)的一个脚本?(这样一台服务器的不同配置将在不同的食谱中)
  2. 为每个角色创建一本cookbook,我将连接有关此角色的所有特殊配置.(这种方式1台服务器的不同配置将在1个特定的位置,但我们将有1个额外的食谱)

我个人认为#1更好,因为我们加入了不同角色的不同烹饪书.

编辑

它不仅涉及数据库.例如,我有一些应用程序需要安装和配置tomcats/jetties /其他容器(不同的端口,启用不同的模块).应该存储不同版本的settings.xml/jetty.xml等?在食谱中

  1. 安装tomcat或
  2. 安装其他应用程序,需要tomcat?

cookbook chef-infra

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

C++多态和切片

打印出以下代码

Derived
Base
Base
Run Code Online (Sandbox Code Playgroud)

但我需要将每个Derived对象放入User :: items,调用自己的print函数,而不是基类.我可以在不使用指针的情况下实现吗?如果不可能,我应该如何编写逐个删除User :: items并释放内存的函数,以免出现任何内存泄漏?

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

class Base{
public:
  virtual void print(){ cout << "Base" << endl;}
};

class Derived: public Base{
public:
  void print(){ cout << "Derived" << endl;}
};

class User{
public:
  vector<Base> items;
  void add_item( Base& item ){
    item.print();
    items.push_back( item );
    items.back().print();
  }
};

void fill_items( User& u ){
  Derived d;
  u.add_item( d );
}

int main(){
  User u;
  fill_items( u );
  u.items[0].print();
}
Run Code Online (Sandbox Code Playgroud)

c++ polymorphism object-slicing

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

将字符串"A10"拆分为char'A'和int 10

给定一个由单个字符后跟一个数字(一个或两个数字)组成的字符串,我想将其拆分为一个字符和一个整数.实现这一目标的最简单方法是什么?

到目前为止我的想法:

我可以很容易地抓住这个角色:

string mystring = "A10";
char mychar = mystring[0];
Run Code Online (Sandbox Code Playgroud)

困难的部分似乎是抓住后面的一位或两位数字.

c c++ string

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

没有这样的文件或目录 - ruby

我试图从本地磁盘读取该文件的内容,如下所示:

content = File.read("C:\abc.rb","r")
Run Code Online (Sandbox Code Playgroud)

当我执行rb文件时,我得到一个异常,因为错误:没有这样的文件或目录.我在这里错过了什么?

ruby

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

如何使用ohai gem

在OpsCode Wiki中有以下文档:

require 'ohai'

# ...
# Profit! ;-)
Run Code Online (Sandbox Code Playgroud)

如何打印'ohai'命令提供但使用IRB的JSON数据?我试着在application.rb中看到代码,但是我得到了空数据.

require 'ohai/application'
ohai = Ohai::System.new
ohai.json_pretty_print
 => "{\n\n}" 
Run Code Online (Sandbox Code Playgroud)

并不想内厨师(或做SHEF),我只是想用ohai宝石本身,在我自己的应用程序.

ruby ohai-gem

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

如何将字符串拆分为列表并获取第三个元素?

我使用厨师,但我是一名python开发人员.我需要拆分一个看起来像这样的字符串:

ms = "a-b-c-d"
Run Code Online (Sandbox Code Playgroud)

然后我需要获得第三个元素'c'

在python我会这样做:

ms.split('-')[2]
Run Code Online (Sandbox Code Playgroud)

做红宝石的方式是什么?

ruby

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