"İstifadəçi müəyyən edilmiş litals" etiketli suallar

User literals bir C ++ dilidir (yeni C ++ 11), istifadəçi dəyişən dəyişikliklərin yeni növlərini təyin etməyə imkan verən bir dildir və bu, hərfi dəyişikliklər olan simvollar simvolu əsasında obyektlər qurur.
12
Cavablar

C ++-a yeni xüsusiyyətlər xüsusi mətnlər əlavə edir?

C ++ 11 hər hansı bir literal təqdimata malik olmasını təmin etmək üçün mövcud mətnlər (int, hex, string, float) əsasında yeni bir sintaksis daxil etməyə imkan verəcək xüsusi mətnləri təmsil edir. <strong> Nümunələr: // xəyali numb ...
26 oktyabr təyin etdi '08 saat 12:53 'də
12
Cavablar

C ++-da kompilyasiya zamanı simvollarının bəyannaməsi

C ++-da tərtib edərkən strings yaratmaq və idarə etmək bacarığı bir neçə faydalı proqrama malikdir. C ++-da tərtibat dövrünün stringsini yarada bilə bilsəniz, proses çox çətindir, çünki simli bir dəyişkən ardıcıllıqla elan edilməlidir ...
07 Aprel ayı '13 5:10 'da
4
Cavablar

Dəyişən simvol əvəzinə strings üçün xüsusi bir literal istifadə üstünlükləri

"Qeydlər" bölməsində danışan SO sənədlərində mövzu xətləri: C ++ 14-dən "foo" ə yerinə "foo" istifadə etmək tövsiyə olunduğundan s sətirdə const char * "foo" ifadəsini std: simli "foo". Yalnız ...
28 İyul tarixində saat 16.00 'da təyin olundu
3
Cavablar
2
Cavablar

Istifadəçi "" operatorundan istifadə haqqında hər hansı bir məlumat varmı?

Bjarne Straustrup "Going Native 2012" konfransında çıxış edərək çıxışında düzgün birləşmələrə sadiq qalma məsələsini müzakirə etdi. Bunun üçün zərif (IMHO) həlli operatorun istifadəsi ilə bağlıdır, mən heç eşitməmişəm ...
02 fevral '12 saat 23:16 'da
5
Cavablar

İstifadəçi müəyyən edilmiş ədədlər constexpr deyil?

Mən xüsusi ədədlər test edirəm. _Fac bir factorial nömrəsini qaytarmaq istəyirik. Bununla belə, constexpr funksiyasını çağırırsa, mənə şablon ilə bunu etməyə imkan vermir, çünki derleyici argümanların olmadığını və ola bilməyəcəyindən şikayət edir ...
13 noyabr müəyyən '11 'də 2:52' də
3
Cavablar

Qlobal ad boşluğunda standart C ++ 14 ədədlər niyə default olaraq təyin edilmir?

C ++ 14, <chrono> başlığından std :: string və müxtəlif vaxt intervalı olan digər şeylər arasında standartlaşdırılmış ədədləri ehtiva edir. Onları istifadə etmək üçün ad sahəsi std :: litals istifadə edərək demək lazımdır; (və ya bəzi seçimlər ...
27 oktyabr təyin etdi '14 saat 17:45 'də
4
Cavablar

Xüsusi ədədlər üçün nə üçün uzun ikiqat istifadə etməliyəm?

Aşağıdakı istifadəçi müəyyən edilmiş bir səhv buraxır: constexpr cüt operator "" _kg (double q) {return q * 1000; } lakin uzun müddət əlavə edildikdə, səhv olur və kod belə olacaq: constexpr cüt operator "" _kg (lon ...
01 may tarixində saat 11: 36-da təyin olundu
1
cavab

Xüsusi simli ədədlər və tam ədədlər nə üçün fərqli davranışlardır?

Std :: chrono :: saniyə operatoru "" _s (imzalanmayan uzun müddət) {return std :: chrono :: seconds (s); } std :: string operator "" _str (const char * s, std :: size_t len) {return ...
24 noyabrda təyin olundu. '17 saat 9:10 'da
2
Cavablar

Boş yıkıcıya qarşı literal dağıdıcı

Aşağıdakı kodu nəzərdən keçirin: #include <iostream> class Test {public: constexpr Test (const int x): _x (x) {constexpr int get () const {return _x;} ~ HERE protected: const int _x; }; int ana (...
10 yanvar tarixində təyin olundu '13 saat 13:19 'da
2
Cavablar

Kod C ++ 11-də gördüm

Bu mənbə şablonuna baxıram <char ... digits> struct conv2bin; şablon, <char high, char ... digits> struct conv2bin <high, digits ...> {static_assert (high == '0' | high == '1', "no bin num!"); static int const valu ...
15 Aprel tarixində təyin olundu '13 saat 20:46 'da
1
cavab

Bağımlı tipli sətir - mümkün deyil?

Nəticəsinin növü onun giriş simvolu dəyərindən asılı olaraq xüsusi bir simli literal konvertasiya operatorunu müəyyən etmək mümkündürmü? Onlar l üçün icazə kimi, bu, xüsusi tamsaylı və üzən nöqtə literals ilə asandır ...
İyulun 22-də saat 14: 49-da təyin olundu
1
cavab

Xüsusi ədədlər yarada bilərəmmi?

Şübhəsiz ki, bir sinif var: şablon <typename T> sinif Foo {const T * x_; ictimaiyyət: Foo (const T * str): x_ {str} {}}; və bir Foo obyekti yaratan bəzi xüsusi ədədlər təqdim edirəm: Foo <char> operator "" _...
Jan 06 tarixini təyin etdi '17 'də 16:02' da
1
cavab

g ++ 4.7 operatoru makroexpansion ilə bağlı olaraq qiymətləndirir

GCC 4.7-ə bəzi kodları köçürdüm (4.6-dan) və bir neçə kompilyator səhvinə qaçdım və GCC 4.7 miqrasiya kitabçasında təsvir olunmuş problemi tapdım: Xüsusi mətnlər və ISO formatında C ++ kompilyatorları C11 std = {c ++ 11, c + + 0x, gnu + ...
11 avqustda təyin olundu '12 saat 0:58 'da
1
cavab

Nümunəvi ədədləri bir nöqtədən istifadə edərək dərhal müəyyən etmək mümkündürmü?

C ++ 11-dən başlayaraq, xüsusi litals yaratmaq mümkün idi. Gözlənildiyi kimi, bu cür ədədlərdən kompleks strukturlara dönə bilərsiniz. Lakin 123_foo.bar () kimi operatorları istifadə etməyə çalışarkən: struct foo {int n; int bar () const {...
01.03 'də saat 10: 23-də təyin olundu