تولید کننده آموزش و محصولات مبتنی بر برنامه نویسی مدرن

۳۱ مطلب با کلمه‌ی کلیدی «cpp» ثبت شده است

انواع معماری اتصالات سیگنال و اسلات در کیوت بین c++ و qml

با سلام خدمت دوستان عزیز چندی پیش در پی مسائلی که برام پیش اومد نیاز شد توی یک برنامه که هسته سی پلاس پلاس داره و کاملا با سی پلاس پلاس هست از کیو ام ال استفاده کنم ولی جالب بود دو روشی که قبلا میشناختم برای این کار جوابگوی نیازم نبود اما اجازه بدید اول روش های قبلی رو با مثال توضیح بدم برای دوستانی که اون رو روش رو بلد نیستند :

 

ادامه مطلب...
۰۶ آبان ۹۷ ، ۰۱:۰۶ ۱ نظر موافقین ۱ مخالفین ۰
بهنام صباغی

دانلود نسخه افلاین سی پلاس پلاس ویژوال استدیو (2 و خورده ای گیگ)

با سلام

همانطور که اطلاع دارید نسخه 2017 ویژوال استدیو با توجه به ابزار های بی‌کاربرد و کم کاربردی مانند ابزار های برنامه نویسی زبان‌های شارپ دار مانند F# و B# و c# و ... حجم بسیار بالایی دارد که دانلود و نصب آن را به شدت سخت کرده .

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

 

برای دانلود فایل و اطلاعات بیشتر میتوانید به لینک زیر از سایت رسمی خود ویژوال استدیو مراجعه کنید :

Create an offline installation of Visual Studio 2017

موفق باشید.

۰۴ مهر ۹۷ ، ۲۲:۱۰ ۰ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

هزار و یک نکته در سی پلاس پلاس نکته سوم (کلمه کلیدی noreturn)

کلمه کلیدی noreturn برای مشخص کردن این نکته که تابع مقداری به صدا زننده باز نمیگرداند استفاده می‌شود. دقت کنید باز نگرداندن مقدار با برگرداندن مقدار void تفاوت دارد. این کلمه کلیدی برای توابعی که هیچ مقداری به صدا زننده فراخوانی نمی‌کنند استفاده می‌شود. ( مانند توابعی که برنامه را می‌بندند یا توابعی که حاوی حلقه بینهایت هستند یا توابعی که throw exceptions می‌کنند.

استفاده از این کلمه کلیدی به کامپایلر کمک می‌کند تا بهینه‌سازی هایی را انجام دهد و همینطور هشدارهای بهتری تولید کند.برای مثال اگر تابع f مقداری بازگشت ندهد و از کلمه کلیدی noreturn استفاده کنید کامپایلر میتواند در کد

f();

g();

به شما در مورد اجرا نشدن تابع g هشدار دهد و همینطور کامپایلر متوجه می‌شود که نباید برای فراموش کردن استفاده از کلمه کلیدی return برای بازگشت دادن مقدار هشداری بدهد.

مثال استفاده :

 

۰۹ شهریور ۹۷ ، ۱۲:۰۳ ۰ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

بررسی پرفورمنس ایتم سفارشی برای QML

با سلام در این پست قصد دارم توضیحی در مورد QtQuick Custom Item Performance بدم و بعد نقدی بر روش استفاده از ساخت ایتم از سی پلاس پلاس برای کیو ام ال داشته باشم .

در این پست توضیح داده که اگر بخوایم یک ایتم کاستوم بکشیم سه راه پیش رو داریم و بعد به روش های زیر اشاره کرده :

  1. کشیدن با استفاده از اوپن جی ال و QQuickItem ( یا استفاده از یک ایتم داخلی )

  2. کشیدن با استفاده از QPainter و QQuickPaintedItem

  3. کشیدن با canvas

ادامه مطلب...
۰۱ شهریور ۹۷ ، ۰۱:۳۳ ۲ نظر موافقین ۱ مخالفین ۰
بهنام صباغی

انتشار قسمت هجدهم آموزش Qml به زبان فارسی(ارتباط بین qml و cpp ) قسمت دوم

با سلام خدمت دوستان آتش به اختیار

این هم قسمت هجدهم از سری آموزش های Qt-Qml که توی اون روش تعبیه کردن یک شی از کلاسی که از QObject به ارث میبره رو آموزش دادم و همینطور نحوه تعبیه و استفاده کردن Qml در ویجت‌ها رو توضیح دادم امیدوارم مفید باشه براتون و شهدا از ما راضی باشند .

 

 

 

لینک آپارات ویدئو  

۱۶ دی ۹۶ ، ۱۹:۵۹ ۴ نظر موافقین ۱ مخالفین ۰
بهنام صباغی

انتشار قسمت هفدهم آموزش Qml به زبان فارسی(ارتباط بین qml و cpp ) قسمت اول

با سلام خدمت دوستان و همراهان همیشگی

در قسمت هفدهم از سری آموزش های Qml به نحوه ایجاد ارتباط بین c++  و Qml پرداختم و یکی از روش های موجود رو توضیح دادم امیدوارم که مفید باشه و متنظر نظرات و انتقاداتتون هستم .

 

 

لینک آپارات ویدئو

۱۵ دی ۹۶ ، ۲۱:۳۲ ۲ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

جمع بندی الگوی های طراحی در c plus plus (به همران لیست آن‌ها )

الگوهای طراحی در c++‎

 

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

 

 

ادامه مطلب...
۱۴ دی ۹۶ ، ۲۰:۰۱ ۰ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

لگوی طراحی Composite در c plus plus

الگوی طراحی Composite در c++‎

 

ویژگی‌ها :

 

  • الگوی کامپوزیت زمانی مفید است که شما می خواهید یک گروه از اشیا را به همان شیوه به عنوان یک نمونه واحد از شیء روش کنید. اشیاء گروه بندی شده، خودشان می توانند به شکل Composite در یک درخت باشند.
  • با اشیاء اولیه و ترکیب، به طور یکنواخت رفتار می شود.
  • یک رابط جزئی تعریف شده است و هر دو برگ و همچنین اجزای کامپوزیت آن را به طور یکنواخت اجرا می کنند.
  • در مثال زیر یک پیاده سازی با یک الگوی کامپوزیت تشخیص تلفن نشان داده می شود. یک شی کامپوزیتی با ترکیب تمام اشیاء تشخیص مربوط به گوشی در یک درخت شکل گرفته است. سپس یک آزمایش تشخیصی بر روی شی کامپوزیت است که به نوبه خود تقاضای تمام اشیاء تشخیص را به شیوه ی درخت تقسیم می کند.

کد مثال : 

(کد نسبت به منبع تغییر کرد به دلیل وجود نشت حافظه در کد موجود در اینک منبع )

ادامه مطلب...
۱۳ دی ۹۶ ، ۲۱:۳۰ ۰ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

الگوی طراحی Builder در c plus plus

الگوی طراحی Builder در c++‎

 

ویژگی‌ها :

  • الگوی Builder وقتی استفاده دارد که بخواهید یک شی پیچیده را بسازید . قصد این الگو این است که ساختن شیء را از نمایش آن جدا سازد.
  • ابسترکت ساخت شی و سپس پیاده سازی مشتقات قطعات ساخت و ساز مربوطه را ارائه می‌دهد.
  • مدیر اطمینان می دهد که محصول (شیء پیچیده) به درستی با استفاده از رابط سازنده ایجاد شده و قطعات با سفارش صحیح ساخته شده اند.
  • در زیر نمونه ای از یک پیاده روی با آشپزی چند وعده غذای مختلف را نشان می دهد. غذا را به عنوان یک محصول کامل در نظر بگیرید، به این معنا، نمونه های شناخته شده ای از پیتزا و یا پیچ و خم ها، محصولات بهتر را تولید می کنند (به غذا به عنوان یک محصول مهمتر نگاه کنید ).

 

یک مثال ساده از پیاده سازی الگوریتم Builder در سی پلاس پلاس :

(کد نسبت به منبع اصلاح شد )

 

ادامه مطلب...
۱۳ دی ۹۶ ، ۲۰:۰۰ ۲ نظر موافقین ۰ مخالفین ۰
بهنام صباغی

الگوی طراحی Facade Pattern در c plus plus

الگوی طراحی Facade در c++‎ چیست ؟

  • الگوی طراحی Facade یک الگوی ساختاریست .
  • کتابخانه نرم افزاری پیچیده موجود را با استفاده از رابط کاربری ساده تر برای وظایف رایج آسان می کند.
  • به برنامه ها / کاربران اجازه می دهد تا با استفاده از کتابخانه، از عملکرد درونی یک کتابخانه پیچیده، جدا شوند.

یک مثال ساده از الگوی  Facade :

(کد نسبت به منبع اصلاح شد )

ادامه مطلب...
۱۲ دی ۹۶ ، ۲۱:۳۰ ۴ نظر موافقین ۰ مخالفین ۰
بهنام صباغی