Obecnie pracuję na już rozwinięty projekt napisany w MFC C++ i jestem w obliczu problemu z już obecnym makro o definicję:Redefiniowanie lub zmieniając wartość makro
#define HEIGHT_TESTS 13
Próbuję zmienić wartość z w ramach kodu, ale myślę, że od jego wstępnej definicji, nie jestem w stanie tego zrobić. Czy istnieje sposób, w jaki mógłbym obejść ten problem bez konieczności zmiany oryginalnego makra ogólnego (ponieważ może to wpłynąć na pierwotną funkcjonalność programu). Zamierzam go zmienić w jednym szczególnym warunku, reszta wszędzie jest taka sama.
Po to, aby wszyscy wiedzieli, oczywiście wypróbowałem inną definicję makra z wartością (17), którą zamierzam użyć, ale nie mam szczęścia jako takiego.
Każda pomoc będzie mile widziana.
Polecam posiadanie innego makra do Twojego celu, zamiast #zdefiniowania i przedefiniowania go. – Ajay
Należy pamiętać, że nie będzie możliwe zapisanie istniejącej wartości i jej przywrócenie w celu przywrócenia. Jedynym sposobem na to będzie ponowne zdefiniowanie makra z 13, która jest oczywiście zakodowaną wartością. Jeśli chodzi o odpowiedzi, masz już 2 poniżej, które są poprawne. –
Próbowałem użyć innego makra, ale nie wyszło. Program się zawiesza. To tylko wtedy, gdy zmienię tę konkretną wartość #define, daje mi to właściwy wynik (nie wynik, który zamierzam uzyskać z tym szczególnym warunkiem). – Neophile