nullptr

تو ‪c++‬ برای پویینتری که به هیچ جایی اشاره نمی کرد از مقدار ۰ استفاده می شد. ماکرو NULL هم چیزی نبود به غیر از بازتعریف همین مقدار صفر. اما فرض کنید دو تا تابع به شکل زیر داریم:
[cpp]
void f(int);
void f(char *);
[/cpp]
حالا سوال اینه که تو فراخوانی به شکل زیر کدوم تابع باید صدا زده بشه؟
[cpp]
f(0);
[/cpp]
برای رفع این نقطه ابهام c++11 کلمه کلیدی nullptr رو پیشنهاد میکنه. nullptr با همه انواع پویینتر (از جمله پویینتر به تابع) سازگاره. مهمتر از اون اینکه یه راه استاندارد برای تفکیک مقدار دهی اشاره گر با انواع دیگه فراهم میکنه.

منبع

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *