Makrodefinicje ze zwracaniem wartości

Makrodefinicje ze zwracaniem wartości
SR
  • Rejestracja: dni
  • Ostatnio: dni
0

Jak wygląda składnia makra, które zwraca wartość o typie zdefiniowanym przeze mnie?

hauleth
  • Rejestracja: dni
  • Ostatnio: dni
0

Nie da się.

KA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1652
0

generalnie to się nie da się wymusić typu ani niczego, ale można trochę zasymulować.
mógłbyś np napisać coś w stylu:
#define MAKRO(X) static_cast<int>(x)

czy coś w tym stylu.
Lepiej byś napisał co konkretnie chcesz zrobić. Może nie potrzebujesz w ogóle makr.

SR
  • Rejestracja: dni
  • Ostatnio: dni
0

Mam wygenerować makro, które symuluje funkcję, która wysyła komendy w platformie POBICOS.
Generalnie w tej funkcji wywołuję inną, która zwraca kod błędu i właśnie chcę aby ten kod błędu był zwracany przez makro.

msm
  • Rejestracja: dni
  • Ostatnio: dni
0

Takie używanie makr jest pozbawione sensu. Aczkolwiek, jeśli już musisz...

Możesz spróbować użyć do tego rzadko używanego operatora przecinek - wyglądałoby to mniej-więcej tak

#define MYMACRO(X) static_cast<int>(BLAH(1),BLAH(ASDF(2)+2),BLAH(2),MY_POBICOS_FUNCTION())

Warunek jest taki żeby ostatnią funkcją była ta która ma zwrócić wartość

Azarien
  • Rejestracja: dni
  • Ostatnio: dni
1

Od tego są szablony w połączeniu z inline.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.