C vs C++
وقتی برای اولین بار به سورس کد سی پلاس پلاس گیت نگاه کردم، دو چیز باعث تعجبم شد: اول آن که کد خالص C در مقابل ++C قرار دارد. نمیدانم چرا؟ لطفا در مورد پرتابل بودن بحث نکنید. دوم هم این که ++C آشغالی بیش نیست!
لینوس توروالدز
همان طور که میبینید خالق لینوکس آقای توروالدز تنفر خاصی نسبت به C++ دارد.به خاطر اینکه بنده دلیلی برای این سخن لینوس توروالدز پیدا نکردم یک آزمایش کوچک و ساده با زبان های C و C++ انجام دادم.من برنامه ی چاپ Hello, World را یک بار در C و یک بار دیگر در C++ بازنویسی کردم:
//Hello.c
#include <stdio.h>
void main(){
printf("Hello, World!");
}
//Hello.cpp
#include <iostream>
using namespace std;
int main(){
cout<<"Hello, World!";
return 0;
}
پس از کامپایل دو فایل Hello.c و Hello.cpp به نتایج زیر برخورد کردم:
حجم فایل کامپایل شده ی Hello.c, بیست و هفت کیلوبایت و حجم فایل کامپایل شده ی Hello.cpp برابر با نهصد و سی و پنج کیلوبایت شد!حال شما فرض کنید در برنامه های بزرگ چه اتفاقی بیفتد.
البته شاید دلیلی که پیدا کردم به دلیلی که توروالدز دارد ربطی ندارد و یا شاید دلیل من اشتباه باشد به هر حال اگر دلیلش این نیست و دلیلش را میدانید لطفا به اطلاع بنده هم برسانید.