constexpr
От: _nn_ www.nemerleweb.com
Дата: 30.07.11 08:46
Оценка:
В C++0x можно делать так:
#include <iostream>
 
constexpr int add(int a, int b) { return a + b; }
 
int main()
{
  std::cout << add(1,2); // Compile time
 
  int a, b;
  std::cin >> a >> b;
  std::cout << add(a, b); // Run time
}


Функция обозначаемая сonstexpr будет вычислена во время компиляции или во время выполнения в зависимости от аргументов.

В Nemerle похожее можно сделать разобрав аргументы макросы и вычислив их по месту если это PExpr.Literal.
Но это громоздко и частное решение для каждого макроса.

Есть ли возможность сделать общее решение для этого ?
http://rsdn.nemerleweb.com
http://nemerleweb.com
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.