Zrobiłbyś tak z makrami, ale stanowczo je odradzam – makra z definicji nie rozumieją kodu.
Możesz jednak zamiast tego (na przykładzie liczenia kwadratu):
void defineVariableAsSquare(int x, string NAME) {
int NAME = x*x; // kod niepoprawny
}
//...
int main() {
defineVariableAsSquare(3, "asdf");
}
zrobić tak:
int computeSquare(int x) {
return x*x;
}
//...
int main() {
int asdf = computeSquare(3);
}
czyli zastąpić "zwracanie" do definiowanej zmiennej prawdziwym zwracaniem.