ar
Feedback
C++

C++

الذهاب إلى القناة على Telegram

گروه آموزش زبان برنامه نویسی سی، سی پلاس پلاس خدمت شما دوستداران گرامی با امید بهره بردن و موفقیت شما همراهان🌹 ممنون که همراه ما میشین و ما رو حمایت میکنین 🌹 https://t.me/ourcpp

إظهار المزيد
2 130
المشتركون
-224 ساعات
-57 أيام
-4730 أيام
أرشيف المشاركات
C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش سوم ➖قسمت ۷/۹ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش سوم ➖قسمت ۶/۹ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش سوم ➖قسمت ۵/۹ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش سوم ➖قسمت ۴/۹ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش سوم ➖قسمت ۳/۹ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش سوم ➖قسمت ۲/۹ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش سوم ➖قسمت ۱/۹ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
وقتی که کد نویسی برنامه تموم میشه نوبت تست میشه😂 #fun 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی .

C++
2 130
#fun 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی .
#fun 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی .

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش دوم ➖قسمت ۷/۷ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش دوم ➖قسمت ۶/۷ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش دوم ➖قسمت ۵/۷ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش دوم ➖قسمت ۴/۷ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش دوم ➖قسمت ۳/۷ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش دوم ➖قسمت ۲/۷ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش دوم ➖قسمت ۱/۷ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی

C++
2 130
#library #template_engine #string_manipulation #inja استفاده از موتورهای ویرایش متن Inja کتابخونهٔ inja یک Template Engine بسیار قوی هست، که شما می‌تونید با استفاده از این کتابخونه، عملیات منطقی‌ای رو خیلی راحت روی رشته‌هاتون اعمال بکنید:
nlohmann::json data;
data["name"] = "another-ghasem";

std::string string = "yet another {{ name }}";
inja::render_to(std::cout, string, data);
حتیٰ با استفاده از این کتابخونه، می‌تونید از حلقه‌ها هم داخل رشته‌اتون استفاده بکنید. این کتابخونه به خوبی با Streamهای سی‌پلاس‌پلاس هماهنگ بوده و به راحتی با nlohmann::json کار می‌کند: https://github.com/pantor/inja

C++
2 130
#library #json استفاده از قالب JSON برای استفاده از JSON در زبان سی‌پلاس‌پلاس، Parserهای زیادی وجود داره که ما اینجا بسته به نیازمون، سه‌تاش رو معرفی می‌کنیم: 1- nlohmann::json 2- RapidJSON 3- simdjson درصورتی‌که صرفاً نیاز به یک Serializer/Deserializerـه JSON بدون هیچ محدودیّت خاصی دارید، کتابخونهٔ nlohmann::json فوق‌العاده کتابخونهٔ عالی‌ای هست، چرا که APIهای واقعاً تمیزی داره و خیلی راحت هست کارکردن باهاش و به خوبی با Streamهای سی‌پلاس‌پلاس همگام‌سازی شده‌ست. امّا درصورتی‌که نیاز به کتابخونهٔ سریع و پرقدرت دارید، متأسفانه باید بگم که قابلیّت APIهای تمیز و خوب رو از دست میدید. دو کتابخونهٔ RapidJSON و simdjson فوق‌العاده سریع و بهینه نوشته شده‌اند که نیازه قبل از استفاده در محیط خودتون؛ یک Benchmark بگیرید و انتخاب بکنید.

C++
2 130
#tips #conversion_operator #enum مشکل استفاده از Conversion Operatorها با Enumerationها یکی از عملیاتی که می‌تونیم برای نوع خودمون بازنویسی بکنیم، عملیات تبدیل نوع هست:
struct uuid_t {
  std::size_t data;
};

void f(std::size_t id);
uuid_t uuid;
f(uuid);
در این مثال، کامپایلر به ما خطای: ناتوانی در تبدیل uuid_t به std::size_t به ما میده. که برای اینکه به کامپایلر بگیم چطوری این تبدیل رو انجام بده، باید از Conversion Operatorها استفاده بکنیم:
struct uuid_t {
  std::size_t data;
  operator std::size_t() {
    return data;
  }
};
جهت اجرا کردن: https://wandbox.org/permlink/ULUIF75fB4y9EBsp امّا متأسفانه این عملیات، در Enumerationها عملی نمیشه. و اگر بخوایم عملیات بیتی انجام بدیم، مجبوریم از Unscoped Enumeration ها استفاده بکنیم که احتمال خطای تداخل اسمی رو خیلی بالا میبره. یک روشی که این امکان رو بهمون میده که هم Scoped Enumeration داشته باشیم و هم Conversion Operator: استفاده کردن از Unscoped Enumeration به علاوهٔ Namespaceها هست:
namespace my_enum {
enum _ {
  enum_1, enum_2, enum_3
};
} // namespace my_enum
ما اینجا نیازی به تعریف Conversion Operatorها نداریم، چرا که این دسته از Enumerationها خودشون می‌تونند به Underlying Typeیی که دارند، به راحتی تبدیل بشند (تنها خوبی‌ای که دارند 😂) برای اجرا: https://wandbox.org/permlink/yX6ceEztIl3wwajY

C++
2 130
👨‍🏫آموزش standard template library (STL) 🔘بخش اول ➖قسمت ۲/۲ منبع:Linkedin مدرس:Bill Weinman #آموزش #stl 〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️ 🔘گروه برنامه نویسی C/C++ 🔘سی پلاس پلاس فارسی