c++ - 防止自动转换为整数

标签 c++ c audio casting typedef

我正在开发一个音频应用程序(在 C++ 中),我有很多函数可以相互调用,它们要么采用帧数(即 1 个单声道或 2 个立体声浮点样本),要么采用原始样本数...

越来越难跟踪每个函数(样本或帧?)的语义以及何时按 nChannels 进行 mult 或 div,所以我想以某种方式做一个 typedef samples_t 和 frames_t(到 unsigned int)并有编译器帮助我...

是否有任何简单的方法可以将从 frames_t 到 samples_t 的隐式转换标记为 C++ 中的错误?

最佳答案

您可以全力以赴,在boost.units 内定义您自己的系统, 或者只使用 BOOST_STRONG_TYPEDEF为每种类型创建强类型定义的宏。

关于c++ - 防止自动转换为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18108046/

相关文章:

c++ - 如何使用 FFmpeg 将立体声转换为单声道?

c++ - 将数字( double / float )作为属性添加到 RapidXML 节点

php - 从 PHP Web 应用程序调用 C++ 库 : system() vs SWIG PHP extension?

c++ - 如何改进我的类(class)以创建输出文件

c - 找到 的输出?

c++ - LD_LIBRARY_PATH 和 LD_LIBRARY_PATH 有什么区别?

c++ - 如何在使用 OpenCV 遍历像素时添加 2 个 Mat 像素值?

打印整数(由用户输入)的 C 程序当数字很大时输出错误

c# - 显示GIF后,C#Windows Form中的WMP停止播放声音

javascript - 使用 sip.js 从 SIP 通话中录制麦克风和音频