Я считаю, что этот билет был закрыт давным-давно, но для получения правильного SQL-запроса, пожалуйста, посмотрите.
SELECT Employee_Name, DATE_OF_BIRTH
FROM Hr_table
WHERE
/**
fetching the original birth_date and replacing the birth year to the current but have to deduct 7 days to adjust jan 1-7 birthdate.
**/
datediff(d,getdate(),DATEADD(year,datediff(year,DATEADD(d,-7,hr.DATE_OF_BIRTH),getdate()),hr.date_of_birth)) between 0 and 7
-- current date looks ahead to 7 days for upcoming modified year birth date.
order by
-- sort by no of days before the birthday
datediff(d,getdate(),DATEADD(year,datediff(year,DATEADD(d,-7,hr.DATE_OF_BIRTH),getdate()),hr.date_of_birth))
unsigned int (* myFuncPointer)(unsigned int) = &func_1;
Тем не менее, синтаксис для указателей на функции ужасен, поэтому обычно typedef
им:
typedef unsigned int (* myFuncPointerType)(unsigned int);
myFuncPointerType fp = &func_1;
В C ++ 11 вы можете использовать std::function
для хранения функций. Чтобы сохранить функцию, используйте ее следующим образом:
std :: function < тип возвращаемого значения ( тип (ы) параметров )>
в качестве примера вот оно:
#include <functional>
#include <iostream>
int fact (int a) {
return a > 1 ? fact (a - 1) * n : 1;
}
int pow (int b, int p) {
return p > 1 ? pow (b, p - 1) * b : b;
}
int main (void) {
std::function<int(int)> factorial = fact;
std::function<int(int, int)> power = pow;
// usage
factorial (5);
power (2, 5);
}