小编Dar*_*nor的帖子

提升dijkstra shortest_path - 你怎么能得到最短路径而不仅仅是距离?

我需要使用Boost库来获得从一个点到另一个点的最短路径.我查看了示例代码,它很容易理解.但是,该示例仅显示如何获得总距离.我试图弄清楚如何迭代前任映射以实际获得最短路径,我似乎无法弄明白.我已经阅读了关于这个主题的这两个问题:

具有VertexList的Dijkstra最短路径=增强图中的ListS

Boost :: Dijkstra Shortest Path,如何从路径迭代器获取顶点索引?

但是在提供的两个示例中,IndexMap typedef似乎不能与Visual Studio编译器一起使用,坦率地说,Boost typedef对我来说有点混乱,我在解决所有这些问题时遇到了一些麻烦.根据这里的Boost示例代码,有人能告诉我如何才能找到它的路径吗?我会非常感激.

http://www.boost.org/doc/libs/1_46_1/libs/graph/example/dijkstra-example.cpp

c++ boost graph boost-graph

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

我使用DLL时出现.lib错误?

我正在尝试使用Windows DLL(不习惯它们)进行练习.我跟着这篇文章:

http://msdn.microsoft.com/en-us/library/ms235636(v=vs.80).aspx

致信.

然而,我收到此错误:

1> LINK:致命错误LNK1104:无法打开文件'..\debug\math.lib'

我的项目是一个DLL项目,而不是lib.并且根本没有从我的项目创建的库(整个解决方案).

任何人都知道什么是错的?

c++ windows dll

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

为什么Microsoft将"g_"命名约定与其DirectX10管道变量一起使用?

Microsoft的DirectX SDK中的大多数示例代码都包含使用g_Windows API变量前缀的变量,以及DirectX管道变量(如swapchain).

以下是一些示例:

D3D10_DRIVER_TYPE           g_driverType;
ID3D10Device*               g_pd3dDevice;
IDXGISwapChain*             g_pSwapChain;
ID3D10RenderTargetView*     g_pRenderTargetView;
ID3D10Effect*               g_pEffect;
ID3D10EffectTechnique*      g_pTechnique;
ID3D10InputLayout*          g_pVertexLayout;
ID3D10Buffer*               g_pVertexBuffer;
ID3D10Buffer*               g_pIndexBuffer;
ID3D10EffectMatrixVariable* g_pWorldVariable;
ID3D10EffectMatrixVariable* g_pViewVariable;
ID3D10EffectMatrixVariable* g_pProjectionVariable;
D3DXMATRIX                  g_World;
D3DXMATRIX                  g_View;
D3DXMATRIX                  g_Projection;
Run Code Online (Sandbox Code Playgroud)

这背后的原因是什么?我没有得到什么g_意思,为什么你不会使用更方便的名称,如"SwapChain".谁能解释一下?

c++ directx naming-conventions

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

是否有必要删除渲染上下文并销毁设备上下文?

在为OpenGL使用win32 api时是否有必要删除HDC和HRC?我认为Win32API会在窗口关闭时销毁它们吗?

澄清:HRC是HGLRC对象.

c++ opengl winapi

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

使用Boost IOStream创建zip文件的示例?

我一直在寻找一种可移植的好方法,用C ++创建一个zip文件,但很快就会出现。我已经在不同地方阅读了可以使用Boost IOstream库的信息,但是在参考资料中找不到任何源代码甚至文档。

http://www.boost.org/doc/libs/1_48_0/libs/iostreams/doc/index.html

有人参考吗?我已经完成了很多Google搜寻工作,但并未提出太多建议。

c++ boost

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

没有后退按钮执行segue?

有没有办法从导航控制器深处的一个视图控制器中执行一个segue,而当调用segue时,会阻止"后退"按钮出现?这样做的理由是,在深入研究产品之后,我们宁愿用户无法回头搞砸了.

xcode objective-c ios ios5

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

这个余弦16位功能究竟在做什么?

我想我在审查其他人的代码方面相当不错......但我不知所措.这来自Doom3 Math库.我相信自从Quake 1以来,这可能存在于GPL中.请注意,这确实引用了math.h. 我猜有一些方法,这实际上计算余弦......但我无法弄明白.谁解释一下?

    ID_INLINE float idMath::Cos16( float a ) {
    float s, d;

    if ( ( a < 0.0f ) || ( a >= TWO_PI ) ) {
        a -= floorf( a / TWO_PI ) * TWO_PI;
    }
#if 1
    if ( a < PI ) {
        if ( a > HALF_PI ) {
            a = PI - a;
            d = -1.0f;
        } else {
            d = 1.0f;
        }
    } else {
        if ( a > PI + HALF_PI …
Run Code Online (Sandbox Code Playgroud)

c++ trigonometry

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

你如何通过引用传递枚举?

我有一个带有四个键的枚举我正在作为接口程序的输入,我想通过值将枚举传递给接口函数,这已经变得很长.枚举是这样的:

enum MYKEYS {
  W, S, O, L
};
Run Code Online (Sandbox Code Playgroud)

还有一个布尔数组,我必须通过引用传递,这也有点棘手.

bool key[4] = { false, false, false, false };
Run Code Online (Sandbox Code Playgroud)

有没有人知道在函数中将这两个作为引用传递的正确语法,类似于:

function(int & anintreference);
Run Code Online (Sandbox Code Playgroud)

c++ enums

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

cocoa是否限制了C/C++ openGL应用程序的整体性能?

我想在Macintosh上编写第一个OpenGL应用程序.以前我只在Windows中完成OpenGL编程.根据我的阅读,基本上有三种选择:

谷氨可可碳

Glut是不可能的,因为我不喜欢它的外观,而且根据我的阅读,不赞成使用Carbon的好份额.现在,关于Cocoa:

这里有一个帖子:纯C中的Cocoa OpenGL窗口?提到Cocoa将你限制在一个线程中.这是整个应用程序的单个线程,还是窗口管理的单个线程?我是否会被禁止从C/C++本身进行多线程编程?

此外,可可会减慢你的速度吗?暴雪使用什么样的窗口管理?

c c++ opengl cocoa objective-c

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

如何暂停Boost单元测试?

我正在为我创建的计时器编写一个单元测试,并且遇到了我经常遇到的其他项目的问题.我想创建一个单元测试,启动我的计时器,等待片刻,然后在计时器运行后检查我的计时器的值.然后我可以测试我的计时器中的所有功能.

有没有办法做到这一点?我在文档中没有看到任何内容.如果这不是一个好习惯,请告知我应该做什么.

c++ boost unit-testing

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