از ویکیپدیا، دانشنامه آزاد
در برنامهنویسی کامپیوتر، یک تابع سره یا خالص (به انگلیسی: Pure Function) یک تابع است که دارای ویژگیهای زیر باشد:[۱][۲]
این مقاله دقیق، کامل و صحیح ترجمه نشده و نیازمند ترجمه از انگلیسی به فارسی است. کل یا بخشی از این مقاله به زبان انگلیسی نوشته شدهاست. اگر مقصود ارائهٔ مقاله برای مخاطبان زبان انگلیسی است، باید در ویکیپدیای انگلیسی نوشته شود (فهرست ویکیپدیاها را ببینید). در غیر این صورت، خواهشمند است ترجمهٔ این مقاله را با توجه به متن اصلی و با رعایت سیاست ویرایش، دستور خط فارسی و برابر سازی به زبان فارسی بهبود دهید و سپس این الگو را از بالای صفحه بردارید. همچنین برای بحثهای مرتبط، مدخل این مقاله در فهرست صفحههای نیازمند ترجمه به فارسی را ببینید. اگر این مقاله به زبان فارسی بازنویسی نشود، تا دو هفتهٔ دیگر نامزد حذف میشود و/یا به ویکیپدیای انگلیسی منتقل خواهد شد. اگر مایل به ارزیابی این مقاله هستید، میتوانید ترجمهٔ گوگل از این مقاله را ببینید. در هر حال، لطفاً ترجمهٔ ماشینی دیگری به این مقاله اضافه نکنید، چرا که این گونه از ترجمهها عموماً کیفیت بسیار پایینی دارند. اگر شما اخیراً این مقاله را بهعنوان صفحهٔ نیازمند ترجمه برچسب زدهاید، لطفاً عبارت {{جا:هبک-ترجمه به فارسی|1=تابع سره}} ~~~~ را نیز در صفحهٔ بحث نگارنده قرار دهید. |
نمونههای زیر از توابع سره C ++ هستند:
floor
، بازگشت توابع جزء صحیح یک عدد؛max
، بازگشت بیشینه دو مقدار؛sin
، بازگشت سینوس یک عدد.توابع C ++ زیر به علت نقض ویژگی ۱، ناسره هستند:
int f() {
return x;
}
int f(int* x) {
return *x;
}
توابع C ++ زیر به علت نقض ویژگی ۲، ناسره هستند:
void f() {
static int x = 0;
++x;
}
void f() {
++x;
}
void f(int* x) {
++*x;
}
void f() {
std::cout << "Hello, world!" << std::endl;
}
توابع C ++ زیر به علت نقض هر دو ویژگی ۱ و ۲، ناسره هستند:
int f() {
static int x = 0;
++x;
return x;
}
Seamless Wikipedia browsing. On steroids.