小编Nov*_*viz的帖子

删除指针数组 - 我做得对吗?

我对删除指针的问题感到有些愚蠢,但我需要确保以正确的方式删除,因为我正在进行程序的调试过程.

基本上我有几个指针数组,在我的头文件中定义如下:

AsteroidView *_asteroidView[16];
Run Code Online (Sandbox Code Playgroud)

在for循环中,我然后初始化它们:

for(int i = 0; i < 16; i++)  
{  
      _asteroidView[i] = new AsteroidView();  
} 
Run Code Online (Sandbox Code Playgroud)

好的,到目前为止一切顺利,一切正常.当我最终需要在析构函数中删除这些时,我使用以下代码:

for(int i = 0; i < 16; i++)  
{  
        delete _asteroidView[i];  
}
Run Code Online (Sandbox Code Playgroud)

这就是我需要做的吗?我觉得它是,但我担心内存泄漏.

出于兴趣......点对象数组与对象数组相比有多大区别?

c++ arrays pointers delete-operator

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

C#加载C++ DLL - 退出问题

好的,我有一个使用C++ DLL的C#用户界面.DLL实际上是一个OpenGL/SDL游戏.一旦游戏结束,它就会回到C#UI.这一切都很好,据我所知,正确.

当我尝试退出实际程序时出现问题.C#表单关闭,但很快就会出现错误,这非常不合情理.我假设它与DLL有关,也许它仍然是开放的?如何确保DLL已正确关闭?或者你如何一起关闭它?

我打开DLL如下:

    [DllImport("AsteroidGame.dll")]
    public static extern int EntryPoint();

    private void rungame()
    {
            EntryPoint();
    }
Run Code Online (Sandbox Code Playgroud)

提前致谢.

编辑

错误只是说:

vshost32.exe已停止工作

c# c++ dll dllimport exit

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

添加新游戏类型而无需重新编译程序?(C++)

我有一个游戏有不同的游戏类型,即计时赛,无限游戏等.

每种游戏类型都有不同的时间规则和潜在的碰撞规则.显然,在时间试验中,当时间耗尽时游戏结束.

我目前正在通过'硬编码'将它们添加到程序中来添加游戏类型,因此每次我想添加新游戏类型时我都必须重新编译整个程序.

基本上,为了使添加游戏类型更容易,我不想重新编译所有内容.因此,潜在的新游戏类型可以是可下载的内容,并且只需将新类型放入游戏文件夹即可.

怎么会这样做呢?我假设它是使用libs或dll或其他东西(我对此知之甚少,所以我可能完全不正确).

我希望一切都有道理,我希望你们可以帮助我,或者至少让我指向解释这种方法的书或文章的方向.

提前致谢.

c++ types external recompile

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

标签 统计

c++ ×3

arrays ×1

c# ×1

delete-operator ×1

dll ×1

dllimport ×1

exit ×1

external ×1

pointers ×1

recompile ×1

types ×1