প্রশ্ন ট্যাগ «constexpr»

কনসেক্সপ্রস সি ++ 11 এ প্রবর্তিত একটি সংশোধক, যা সংকলককে জানিয়ে দেয় যে কোনও ফাংশন বা ভেরিয়েবলের মান জানা যায় বা সংকলনের সময় গণনা করা যায়। যেমন, এটি এমন স্থানে ধ্রুবক হিসাবে ব্যবহার করা যেতে পারে যেখানে অন্যথায় এটি হতে পারে না।

1
__Func__ পয়েন্টার দুটি কনটেক্সপ্রসের উদাহরণগুলির মধ্যে পার্থক্য কি এখনও কনটেক্সপ্রপ?
এটি কি বৈধ সি ++? int main() { constexpr auto sz = __func__ - __func__; return sz; } জিসিসি এবং এমএসভিসি মনে করে এটি ঠিক আছে, কলং মনে করেন এটি ঠিক নয়: সংকলক এক্সপ্লোরার । সমস্ত সংকলক সম্মত হন যে এটি ঠিক আছে: সংকলক এক্সপ্লোরার । int main() { constexpr …

2
একজন কনস্ট্রের এক্সপ্রেসকে কীভাবে এত তাড়াতাড়ি মূল্যায়ন করা যায়
আমি দৃ const় মত প্রকাশের চেষ্টা করছি যা সংকলন সময়ে মূল্যায়ন করা হয়। তবে আমি এমন একটি উদাহরণ দিয়ে খেলেছি যা সংকলনের সময় কার্যকর করার সময় অবিশ্বাস্যরকম দ্রুত বলে মনে হয়। #include<iostream> constexpr long int fib(int n) { return (n <= 1)? n : fib(n-1) + fib(n-2); } int main …
13 c++  const  constexpr 

1
কনসেক্সট্রপ কনস্ট্রাক্টরে একটি অ্যারের সূচনা করার জন্য আইনী?
নিম্নলিখিত কোডটি বৈধ? template <int N> class foo { public: constexpr foo() { for (int i = 0; i < N; ++i) { v_[i] = i; } } private: int v_[N]; }; constexpr foo<5> bar; কলং এটি গ্রহণ করে, তবে জিসিসি এবং এমএসভিসি এটি প্রত্যাখ্যান করে। জিসিসির ত্রুটিটি হ'ল: main.cpp:15:18: …

1
স্প্যান কি কনটেক্সপ্রপ হতে পারে?
স্ট্যান্ড :: স্প্যানের সমস্ত কনস্ট্রাক্টরকে কনটেক্সার্প ঘোষণা করা হয়েছে, তবে আমি তাদের কোনওটিই একটি কনস্টেক্সের প্রসঙ্গে কাজ করতে পাইনি বলে মনে হচ্ছে। নীচের যেকোন কনস্টেক্সপ্রকে অনিয়ন্ত্রিত করার ফলে সংকলনের ত্রুটি হবে। #include <array> #include <span> int main() { constexpr int carray[3] = { 0, 1, 2 }; constexpr std::array<int, 3> …
11 c++  constexpr  c++20 

1
জিসিসি একটি খারাপ-গঠিত কনস্টেক্সপ্র ল্যাম্বদা কলটি প্রতিবেদন করতে ব্যর্থ
আইডিএফই হিসাবে অবিলম্বে প্রকাশিত (তাত্ক্ষণিকভাবে ল্যাম্বডা-এক্সপ্রেশন বলা হয়) অনির্ধারিত আচরণের জন্য দুটি পরীক্ষার মামলা রয়েছে: constexpr auto test3 = []{ int* p{}; { int x{}; p = &x; } return *p; // Undefined Behaviour }(); // IIFE constexpr auto test4 = []{ int x = std::numeric_limits<int>::min(); int y = -x; …
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.