这是我到目前为止所拥有的:
typedef const float Chord[6];
static Chord progressionOne[] = {
{5.0f / 6.0f, 1.0, 1.25, 5.0f / 3.0f, 2.0, 2.5}, // i
{5.0f / 6.0f, 2.0f / 3.0f, 1.0, 4.0f / 3.0f, 5.0f / 3.0f, 2.0}, // VI
{0.75, 1.0, 1.25, 1.5, 2.0, 2.5}, // III
{1.125, 1.5, 1.875, 2.25, 3.0, 3.75} // VII
};
static Chord progressionTwo[] = {
progressionOne + 1, //VI
progressionOne + 3, //VII
progressionOne + 0, // i
progressionOne + 0,
};
这似乎是我在几轮按摩我的符号、交换星号和调整 typedef 中能得到的最接近的结果。我想要的,希望在上下文中很清楚,是重新排列progressionTwo
的行,产生progressionTwo
. 我不介意数据重复或毛茸茸的符号——我只想足够干以避免两次输入实际值。
...我真的需要阅读标准:/