小编Dan*_*l P的帖子

将void转换为typedef(最佳实践)

将void数组转换为typedef的最佳做法是什么?

这就是我目前的做法:

typedef struct {
    int16_t left,right;
} SampleStereo16;

void *buffer[100000]; // data buffer
SampleStereo16* sample;

// insert something here that writes to the buffer

sample = (SampleStereo16*) buffer;
Run Code Online (Sandbox Code Playgroud)

这似乎工作正常但不知何故,我觉得有一个更好的方法.我还想知道是否有方法让示例数组和缓冲区共享相同的内存(现在它们各自使用自己的内存).

这是我目前正在处理的完整代码:

#include "fmod.h"
#include "fmod.hpp"
#include "fmod_errors.h"
#include "wincompat.h"
#include <stdio.h>

typedef struct {
    int16_t left,right;
} SampleStereo16;

void ERRCHECK(FMOD_RESULT result)
{
    if (result != FMOD_OK)
    {
        printf("\nFMOD error! (%d) %s\n", result, FMOD_ErrorString(result));
        if (result != FMOD_ERR_FILE_EOF)
            exit(-1);
    }
}


int main(int argc, char *argv[])
{
    FMOD::System     *system;
    FMOD::Sound      *sound; …
Run Code Online (Sandbox Code Playgroud)

c++

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

标签 统计

c++ ×1