webForumDet fria alternativet

Om directMusic

.NET

3 svar · 438 visningar · startad av saw

Medlem sedan mars 20011 880 inlägg
Frågan#1

Jag försöker att återskapa ett project som jag förlorade i vintras(hd-crach)
Jag har en class-fil där tonernas frekvens skall identifieras vilket är då det
bästa sättet struct eller i en class.
När jag försöker med en struct så...

struct toner
{
private double a1=	1760;
private double a#1=	1864.655045;
private double h1=	1975.533204;
private double c2=	2093.00452;
private double c2#=	2217.461045;
private double d2=	2349.318139;
private double d2#=	2489.015865;

Problemet är (i både struct eller class) att jag får error på #.
Hur bör man skriva?

Medlem sedan maj 20012 812 inlägg
#2

saw skrev:

Problemet är (i både struct eller class) att jag får error på #.

Jag har svårt att tro att du får använda # i dina variable namn då de tecknet förknippas med preprocessor direktiv.

Utalar man inte # som ciss i musikvärlden så fall får du väl skriva

a1
aCISS1
.
.
.
d2CISS=

- M

Medlem sedan aug. 20039 340 inlägg
#3

Gladh skrev:

Utalar man inte # som ciss i musikvärlden

Nepp, iss bara. Ciss är således ett höjt C, Diss är ett höjt D osv. Ett kortare sätt att skriva på skulle kunna vara As1 osv, där s får stå för sharp.
Jag skulle dock hellre ha lagrat värdena i en array, samt hämtat ut dem som index.
Värdena kan dessutom enkelt räknas fram algoritmiskt, så du behöver egentligen inte förlagra dem.

Medlem sedan mars 20011 880 inlägg
#4

Tack för era svar.
JAg gjorde som så att jag byggde upp en select case så att de returnera rätt frekvens.
Nu kan jag alltså genom att skriva in ett ackordsnamn få tillbaka frekvensen(som då spelar).

266 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
131 ms — ändringar (db)