تابع سازنده ی کپی (copy constructor)

سلام!

این جلسه قرار است با مفهوم تابع سازنده ی کپی آشنا شده و از آن استفاده کنیم.

تابع سازنده ی کپی یا همان copy constructor، تابعی است که وقتی که ما اقدام به ساخت یک کپی از یک object می کنیم، صدا زده می شود. در حالت های زیر ما در واقع داریم از object کپی می گیریم (این موارد در بعضی از کامپایلر ها فرق می کنند.)؛

۰ نظر موافقین ۰ مخالفین ۰
روزبه صیادی

شناسایی نوع یک متغیر

سلام!

این جلسه می خواهیم نوع یه متغیر را شناسایی کنیم. این روش برای شناسایی خروجی توابع و همچنین موارد دیگر مفید است.

برای این کار باید کتاب خانه ی typeinfo را include کنید.

#include <typeinfo>

حالا می خواهیم نوع متغیر مورد نظرمان را مشخص کنیم. برای این کار از یک operator به نام typeid استفاده می کنیم. خروجی این operator یک type_info است. خود type_info یک تابع دارد به نام name که اسم متغیر را برمی گرداند.

بنابراین اگر بخواهیم نوع یک متغیر را بفهمیم، باید مانند کد زیر عمل کنیم؛

typeid( VARIABLE ).name()

۰ نظر موافقین ۰ مخالفین ۰
روزبه صیادی

سورس بازی Pentago

سلام!

در ادامه می توانید کد بازی پنتاگو را مشاهده کنید. در صورتی که در باره ی این کد سوال یا پیشنهادی دارید، در قسمت نظرات مطرح کنید.

توضیحات:

کلاس Block مربوط به خانه های بازی است (که شامل ۳۶ تا خانه می باشد).

کلاس Set مربوط به ۴ قسمت بازی است (که شامل ۹ تا Block می باشد).

کلاس Board هم زمین بازی است و دارای ۴ تا set است.

۱ نظر موافقین ۰ مخالفین ۰
روزبه صیادی

سورس بازی XO

سلام!

کد بازی XO را می توانید در ادامه مشاهده کنید. کد بقیه ی پروژه ها به مرور زمان در وبلاگ قرار خواهند گرفت.

۲ نظر موافقین ۰ مخالفین ۰
روزبه صیادی

پیشنهاد برای پروژه با SDL1.2

سلام!

در این مطلب قصد دارم چند پروژه برای انجام دادن پیشنهاد دهم. انجام این پروژه ها برای مسلّط شدن بر SDL1.2 الزامی است. کد این پروژه ها به مرور زمان در وبلاگ قرار خواهد گرفت.

۱. XO

۲. Othello یا Reversi

۳. Four in a row

۴. Pentago

۵. مار و پله

۶. Paint (شامل ابزارهای قلم مو، مستطیل، بیضی، مثلّث و اسپری)

توجه داشته باشید که در همه ی این پروژه ها از کلاس استفاده کنید. استفاده از makefile برای تمامی پروژه ها الزامی است. پروژه ی Paint نیاز به استفاده از ارث بری دارد.

موفق باشید!

۱ نظر موافقین ۰ مخالفین ۰
روزبه صیادی

به دست آوردن رنگ یک نقطه با SDL1.2

سلام!

در این جلسه می خواهیم رنگ یک نقطه از صفحه را به دست بیاوریم.

رنگ پیکسل های یک صفحه به صورت یک آرایه ی دو بعدی ذخیره نمی شود بلکه در یک آرایه ی یک بعدی قرار دارند. بنابراین نقطه ای با مختصات x و y در خانه ای با شماره ی زیر قرار دارد؛

y * screen->w + x

که در این جا screen->w بیان گر طول صفحه است.

۰ نظر موافقین ۰ مخالفین ۰
روزبه صیادی

استفاده از فونت ها و نوشتن روی صفحه با SDL1.2

سلام!

این جلسه قرار است نوشتن با کمک SDL1.2 را آموزش دهیم.

اول از همه باید کتاب خانه ی SDL_ttf.h را include کنید. در صورتی که این کتاب خانه را نصب نکرده اید، به این مطلب مراجعه کنید.

#include "SDL/SDL_ttf.h"

بعد از این که این کتاب خانه را include کردید، باید آن را initialize کنید. برای این کار از تابع زیر استفاده کنید؛

int TTF_Init ();

۱ نظر موافقین ۰ مخالفین ۰
روزبه صیادی