9得票1回答
Travis CI与C++14和Linux的搭配使用

类似问题:如何使用Travis CI和Clang 3.4以及C++11? 如何让Travis CI与C++14一起工作? 这是我们目前的.travis.yml文件: language: cpp compiler: - gcc - clang os: - linux - osx s...

12得票1回答
在Qt Creator中使用libc++代替libstdc++

我安装了clang++ 3.5、g++ 4.9.1、libc++和Qt Creator在Ubuntu 14.04.1上。 我通常使用clang++作为编译器。但最近我发现g++中的libstdc++被用作C++标准库。据我所知,后者目前并不完全支持C++14的创新。 如何在使用clang+...

9得票1回答
如何创建涉及不完整类型成员的“using”声明是最佳方法?

我有一个非常简单的CRTP骨架结构,其中只包含一个向量和基类中的一个私有访问器。在CRTP类中有一个帮助方法来访问它。 #include <vector> template<typename T> class CRTPType { // Will be us...

41得票1回答
如何使std::make_unique成为我的类的友元

我希望声明std::make_unique函数为我的类的友元。原因是我想将我的构造函数声明为protected并提供使用unique_ptr创建对象的替代方法。以下是示例代码: #include <memory> template <typename T> clas...

9得票2回答
异步任务的休眠

在我的项目中,我需要每隔n秒轮询一些设备并永久休眠和继续。我创建了一个使用std::thread而不是launch作为async的异步任务。但是,如果我在使用launch作为async的异步任务中使用std::this_thread::sleep_for(),它似乎实际上会阻塞我的主线程? ...

56得票8回答
实现 C++14 的 make_integer_sequence。

我尝试实现C++14别名模板make_integer_sequence,它简化了类模板integer_sequence的创建。 template< class T, T... I> struct integer_sequence { typedef T value_typ...

20得票1回答
如何在C++中使用Google Protobuf Map?

我尝试在C++中使用新的protobuf Map功能。以下操作在Ubuntu 14.04上使用gcc 4.9.2 C++14和protobuf 3.0.0-alpha-4完成:消息定义:message TestMap { map<string,uint64> map1 =...

28得票1回答
一个超出枚举范围的转换是否会产生一个超出基础类型范围的值?

请考虑以下内容:#include <iostream> enum class E : bool { A, B }; void foo(E e) { switch(e) { case E::A: break; case E::B: break; ...

18得票6回答
显式空指针作为函数参数

我有一个函数:int foo(void * ptr) { // ... } 我能否在C++11/14中通过语法(而不是编译器警告等)禁止传递指向除void *本身之外的指针? 例如,现在可以这样调用:foo(new int(42)); 我需要将此禁用。

9得票3回答
使用静态常量初始化 unique_ptr 时出现 undefined reference 错误

当我试图使用“static const”来初始化“unique_ptr”时,会出现“undefined reference”错误。然而,当我使用相同的常量用“new”创建指针时,符号似乎被神奇地定义了。 这里是一个简单的程序,可以重现这个错误: Outside_library.h cla...