小编Dmi*_*riy的帖子

如何在子类(c ++)中专门化模板方法?

我正在尝试在其子类中专门化非模板类的模板方法:

// .h文件

class MyWriter {
public:
    template<typename T>
    void test(const T & val) {
        std::cout << val << "\n";
    }
};
Run Code Online (Sandbox Code Playgroud)

// .cpp文件

class MyType {
public:
    MyType(int aa, double dd) : a(aa), d(dd) {}
    int a;
    double d;
};

class MyWriterExt : public MyWriter {
public:
    template<> void test(const MyType &val) {
        test(val.a);
        test(val.d);
    }
};

int main() {
    MyWriterExt w;
    w.test(10);
    w.test(9.999);
    w.test(MyType(15, 0.25));
 return 0;
}
Run Code Online (Sandbox Code Playgroud)

但是我收到一个错误:

Error 1 **error C2912**: explicit specialization; 
'void MyWriterExt::test(const MyType …
Run Code Online (Sandbox Code Playgroud)

c++ templates template-specialization visual-studio-2008

6
推荐指数
2
解决办法
1903
查看次数

如何在QListWidget中显示没有文本的图标?

我想在我的QListWidget中只显示图标.我将文本设置为空字符串.当我选择一个图标时,我在文本位置看到一个空的选定方块.查看截图 我如何摆脱这个空白区域?!

icons qt qt4 qlistwidget

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

如何使用svnX将*.a文件添加到存储库中?

似乎svnX默默地忽略所有*.a文件.但我想在存储库中添加一些库,如何使用svnX?

svn macos

6
推荐指数
2
解决办法
4525
查看次数

如何使用 yaml-cpp 发出和解析原始二进制数据

是否可以发出和读取(解析)二进制数据(图像、文件等)?如下所示: http: //yaml.org/type/binary.html 如何在 yaml-cpp 中执行此操作?

yaml-cpp

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

如何实现具有循环引用的对象的深层复制或克隆?

我有这样的等级制度:

class Sphere;
class Cube;
class SpherePair;

class Entity {};

class Cube : public Entity {
public:
  list<Sphere*> spheres_;
};

class Sphere : public Entity {
public:
  Cube       *cube;
  SpherePair *spherepair;
};

class SpherePair : public Entity {
public:
  Sphere *first;
  Sphere *second;
};
Run Code Online (Sandbox Code Playgroud)

我想要的是克隆Cube对象和连接到它的所有对象(Sphere,SpherePair,Cube).

Cube里面有Spheres,每个Sphere都是SpherePair对象的一半.SpherePair指向位于单独的多维数据集或同一个多维数据集中的Spheres.

这是正确的撤消功能所必需的.

我还想要一张旧实体和克隆实体的地图:

std::map<Entity*, Entity*> old_new;
Run Code Online (Sandbox Code Playgroud)

补充:在这些循环引用之前,我有一个简单的克隆功能:

class Entity {
 public:
  virtual Entity* clone() = 0;
}
Run Code Online (Sandbox Code Playgroud)

它被用于这样的方案:

std::vector<Entity*> selected_objects_;

void move(const vec3f &offset) {
  document->beginUndo();

  for(int i = 0; i < selected_objects_.size(); ++i) …
Run Code Online (Sandbox Code Playgroud)

c++ oop clone

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

如何在QWizard中完全禁用或隐藏后退按钮?

我想禁用或隐藏QWizard对话框中的后退按钮.我该怎么做?

qt qt4 wizard

5
推荐指数
3
解决办法
3905
查看次数

使用C或C++在3D空间实现中从3点构建圆

我们有三(3)个xyz点在3D空间中定义一个圆,这个圆需要转换成折线(用于进一步渲染).我正在寻找一个现成的C或C++函数或可以完成这项工作的免费库.

不明白为什么是封闭的.我甚至无法在那里回答我自己的问题.羞辱你们.但你不会阻止知识传播!

c++ geometry

5
推荐指数
3
解决办法
9103
查看次数

如何通过GUI在Qt Creator项目中添加外部.a库?

我使用Qt的mingw编译器构建了yamlcpp static(libyaml-cpp.a)库.现在我想将它添加到我的项目中.我使用这个qt doc,但Qt Creator只允许选择*.lib文件而不是*.a文件(在选择文件对话框中).这令人困惑,因为我使用的是MinGW 4.4调试配置,而不是MSVC2008.

是否可以通过Qt Creator的GUI添加*.a库,我该怎么做?Windows 7,Qt Creator 2.3.1,Qt 4.7.4

qt qt-creator

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

如何在iOS中将文本字符串转换为一组折线?

我有一个字符串,例如"Hello world"和一个字体名称,例如"Courier".我需要得到一个代表这个字符串的折线数组.这些折线将在OpenGL场景中渲染.

我的意思是我需要将每个字母转换成一个或多个2D折线.

我如何在iOS(Objective-C或C++)中执行此操作

iphone fonts objective-c polyline ios

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

如何使用Java创建安装程序?

如何使用Java创建自己的安装程序?我不是在问任何Java安装程序软件.任何人都知道逻辑或方法请告诉我.这些是否有可用的API?

java api installer software-distribution

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

如何在软件模式下在ATI或Intel卡上运行我的CUDA应用程序?

我希望能够在NVIDia上以GPU模式运行我的软件,在ATI或Intel上以CPU(软件)模式运行.我怎样才能做到这一点?

像PhysX一样工作.

目前我在ATI卡片机上收到错误,指出未找到nvcuda.dll.

请不要建议OpenCL. 这个问题与我的相似.但OpenCL的答案对我来说是不可接受的.

我在Windows 7 + Visual Studio 2008上

cuda

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