小编jma*_*erx的帖子

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

从std :: vector中删除,同时为每个执行a?

迭代的正确方法是使用迭代器.但是,我认为通过擦除,迭代器无效.

基本上我想做的是:

for(iterator it = begin; it != end; ++it)
{
    if(it->somecondition() )
    {
     erase it
    }

}
Run Code Online (Sandbox Code Playgroud)

没有v [i]方法我怎么能这样做?

谢谢

struct RemoveTimedEvent
{
    bool operator()(const AguiTimedEvent& pX, AguiWidgetBase* widget) const 
    {
        return pX.getCaller() == widget;
    }
};

void AguiWidgetContainer::clearTimedEvents( AguiWidgetBase* widget )
{
    std::vector<AguiTimedEvent>::iterator it = std::remove_if(timedEvents.begin(),
        timedEvents.end(), RemoveTimedEvent());
    timedEvents.erase(it, timedEvents.end());

}
Run Code Online (Sandbox Code Playgroud)

c++ vector

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

C++中的动态转换有多贵?

对于我的GUI API,它适用于各种后端(sdl,gl,d3d等),我想动态地将泛型类型图像转换为它可能发生的任何形式.

所以最重要的是,我将每秒做大约20*60fps的动态演员表.

动态演员有多贵?我是否会注意到它对性能有明显的负面影响?我还有哪些替代品可以保持可接受的性能水平?

c++ dynamic-cast

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

2D单位矢量的角度?

给定单位矢量0.5,0.5我怎么能找到角度(它的方向),

是吗

cos(x)+ sin(y)?

c++ vector angle

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

交易后从PayPal获取信息

我想在我的网站上创建一个简单的交易,在该人的交易完成后,我希望paypal重定向用户去我网站上的某个地方,我希望PayPal向我提供详细信息,以便我可以使用PHP来解析它并通过电子邮件发送他们购买的链接.我不确定notify_url是做什么的?谢谢

php paypal

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

什么是FAR PASCAL?

我想知道为什么在某些源代码中存在像FAR和PASCAL这样的宏.他们的意思和做法是什么?谢谢

c c++ syntax

22
推荐指数
3
解决办法
8008
查看次数

快速弧算法算法?

我有自己的,非常快的cos函数:

float sine(float x)
{
    const float B = 4/pi;
    const float C = -4/(pi*pi);

    float y = B * x + C * x * abs(x);

    //  const float Q = 0.775;
    const float P = 0.225;

    y = P * (y * abs(y) - y) + y;   // Q * y + P * y * abs(y)


    return y;
}

float cosine(float x)
{
    return sine(x + (pi / 2));
}
Run Code Online (Sandbox Code Playgroud)

但是现在当我描述时,我发现acos()正在杀死处理器.我不需要高度精确.什么是计算acos的快速方法(x)谢谢.

c c++ algorithm math performance

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

C++中的本地C++属性?

C#/.NET中,您可以执行以下操作:

someThing.text = "blah";
String blah = someThing.text;
Run Code Online (Sandbox Code Playgroud)

但是,上面的代码实际上并没有直接与someThing的文本字符串进行交互,它使用了get和set属性.同样,可以使用只读属性.

有没有办法在本机C++中做类似的事情?(不是C++ .NET)

c++

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

用于游戏的跨平台声音API?

是否只有声音的API?

AllegroSDL等API 为我的需求提供了太多.我只需要一个可以执行以下操作的库:

InitSound();
Sound *door = LoadSound("door.wav");
PlaySound(door,volume);
Run Code Online (Sandbox Code Playgroud)

如果它可以支持VorbisMP3等压缩格式也会很棒.

c c++ api audio

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

用于渲染大量立方体的剔除技术

我正在制作一个个人学习项目来制作一个Minecraft克隆.除了一件事,它的工作非常好.类似于我的世界,我的地形有很多立方体堆叠在Y上,所以你可以挖掘.虽然我做了截头剔除,但这仍然意味着我无用地在我下面画出所有层的立方体.立方体是X,Y和Z有序的(虽然只在1个方向,所以从技术上讲,它不是Z订购到相机).我基本上从玩家的位置只添加指向玩家周围的立方体的指针.然后,我对这些进行了截击.我不做oct树细分.我想只是没有渲染玩家下面的图层,除非玩家向下看到一个洞时这不起作用.鉴于此,我怎么能避免在我下面渲染我看不到的立方体,或者还有其他立方体隐藏的立方体.

谢谢

void CCubeGame::SetPlayerPosition()
{
PlayerPosition.x = Camera.x / 3;
PlayerPosition.y = ((Camera.y - 2.9) / 3) - 1;
PlayerPosition.z = Camera.z / 3;
}

void CCubeGame::SetCollids()
{

SetPlayerPosition();

int xamount = 70;
int zamount = 70;
int yamount = 17;

int xamountd = xamount * 2;
int zamountd = zamount * 2;
int yamountd = yamount * 2;
PlayerPosition.x -= xamount;

PlayerPosition.y -= yamount;

PlayerPosition.z -= zamount;


collids.clear();
CBox* tmp;

    for(int i = 0; i < xamountd; …
Run Code Online (Sandbox Code Playgroud)

c c++ algorithm rendering

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

标签 统计

c++ ×8

c ×4

algorithm ×2

vector ×2

angle ×1

api ×1

audio ×1

dynamic-cast ×1

java ×1

math ×1

paypal ×1

performance ×1

php ×1

rendering ×1

syntax ×1