'Hərəkət-semantik' ilə etiketlenen suallar

Köçürmə semantikası, orijinal obyektin müvəqqəti və ya başqa bir müddətdən artıq olan obyekt olduğunda bir surət əməliyyatını daha səmərəli "köçürmə" ilə əvəz etməyə imkan verən proqramlaşdırma dilinin funksiyasıdır.
11
Cavablar

Məqsəd semantikası nədir?

Mən yalnız Scott Myers ilə C ++ 0x ilə bağlı Radio Software podcast-i dinlədik. Yeni funksiyaların əksəriyyəti mənə məlum idi və mən indi C ++ 0x-dən çox narahat oldum. Hələ hərəkətin semantikasını ala bilmirəm ...
24 İyun tarixində saat 01: 46-da təyin olundu
6
Cavablar

Std :: move () nədir və nə vaxt istifadə edilməlidir?

Nədir? O nə edir? Zaman istifadə olunmalıdır? Yaxşı əlaqələr gözləyirik.
05 Avqust '10 saat 12:42 'da
4
Cavablar

push_back vs emplace_back

Push_back və emplace_back arasında fərqi bir az qarışdırdım. void emplace_back (Tip Val); void push_back (const növü _Val); void push_back (Tip _Val); Rvalue bağlantısını istifadə edərək push_back aşırı yük ...
29 noyabrda təyin olundu. '10 'da 15:04' da
5
Cavablar

C ++ 11 rvalues ​​və hərəkət ifadəsi qarışıqlıq semantikası (qayıtma ifadəsi)

Rvalue əlaqələrini anlamağa və C ++ 11-in semantiklərini anlaymağa çalışıram. Bu nümunələr arasındakı fərq nədir və onlardan hansı vektorun surətini çıxarmayacaq? İlk nümunə std :: vektor <int> return_vector (void) {std :: vektor <int> tmp {1,2,3,4,5}; ...
13 fevral müəyyən olundu 23: 23-də '11
3
Cavablar

"Bunun üçün * rvalue istinadı" nədir?

Mən C ++ 11 statusu səhifəsində "rvalue istinadı" adlı bir cümləə müraciət etdim. Rvalue istinadlarını bir az oxudum və anladım, amma bunu bildiyimi düşünmürəm. Mən də şərtlərlə İnternetdə çox sayda resurs tapa bilməmişəm. Orada ...
23 dekabrda təyin olundu '11 1:47 'da
2
Cavablar

Müasir C ++ sizlərə pulsuz performans verə bilərmi?

Bəzən C ++ 11/14-nin C ++ 98 kodunu tərtib edərkən performansını artırdığı iddia edilir. Hakimiyyət adətən hərəkəti semantikasına görə yerinə yetirilir, çünki bəzi hallarda rvalue konstruktorları avtomatik olaraq yaradılır ...
22 dekabrda təyin olundu. '14 'də 4:03' də
2
Cavablar

Taşınan obyektlə nə edə bilərəm?

Standart onu daşıyandan sonra obyektlə nə edə biləcəyimi müəyyən edirmi? Mən düşünürdüm ki, köçürülmüş bir obyektlə nə edə biləcəyiniz hər şeyi məhv edir, amma bu kifayət deyil. Məsələn, dəyişdirmə funksiyası şablonununu s kimi müəyyənləşdirin ...
11 avqustda təyin olundu '11 saat 17:19 'da
4
Cavablar

C ++ 11-də köçməyən bir növü nə vaxt lazımdır?

Bu mənim axtarış nəticələrimdə görünmədiyinə şaşırdım, düşündüm ki, C ++ 11-də hərəkətin semantikasının faydalılığı nəzərə alınmaqla, kimsə bu barədə daha əvvəl soruşdu: Mənə ehtiyac duyulduğunda (ya da mənim üçün yaxşı bir fikirdir) sinfi sürətsizləşdirmək C ++ 11? (İlə ...
13 yanvar təyin etdi '13 saat 2:05 'da
2
Cavablar

Niyə std :: hərəkət 'adlı std :: hərəkət?

C ++ 11 funksiyası std :: hərəkət (x) heç bir şey hərəkət etmir. Bu, r dəyərinə bir dökümdür. Niyə bu işlər görüldü? Bu yanılmır mı?
26 yanvar tarixini təyin etdi '14 'də 4:17' də
6
Cavablar

Tapşırıq bəyanatını və "if (bu! = Rhs)" sözünü hərəkət etdirin

Sinif tapşırıq operatorunda, zəngə təyin olunan obyektin çağırma obyekti olub olmadığını yoxlamaq lazımdır, belə ki, səhv etmirsiniz: Class Class :: operator = (const Class rhs) {if (this! = Rhs) {// do t. ..
17 fevral '12 saat 5:41 'də
6
Cavablar

Std :: hərəkət bir funksiyanın qaytarılması dəyəri üçün istifadə olunmalıdır?

Bu halda, struct Foo {}; Foo meh () {return std :: hərəkət (Foo ()); } Əminəm ki, bu addım lazım deyil, çünki yaradılan Foo xvalue dəyərini təşkil edəcəkdir. Amma bu kimi hallar nədir? struct Foo {}; Foo meh () {foo foo; // bir şey etmək, ancaq bilirik ...
13 fevral müəyyən olundu '13 saat 17:55 'də
4
Cavablar

Niyə biz kopyalayırıq və sonra hərəkət edəcəyik?

Kimsə bir obyektin surətini çıxarmaq qərarına gəldikdə bir yerdə kod gördüm və sonra sinif məlumatlarının bir hissəsinə köçürdüm. Məni hər şeyi kopyalamaqdan çəkindirmək olduğunu düşündüm ki, məni qarışdırdı. Burada bir nümunə: struct S {S (std :: string st ...
24 May 'da 13:03' də təyin olundu
6
Cavablar

Std :: unique_ptr elementi ilə xüsusi silinmiş elementi necə istifadə etmək olar?

Bir unikal_ptr elementi olan bir sinif var. sinif Foo {şəxsi: std :: unique_ptr <Bar> bar; ...}; Panel, create () funksiyası və destroy () funksiyası olan üçüncü tərəf sinifidir. Mən std :: unique_ptr istifadə edərək n ...
27 Sentyabr müəyyən etdi '13 saat 17:31 'də
4
Cavablar

Niyə təyinat / hədəf-default konstruktor yoxdur?

Mən sadə bir proqramçıyam. Mənim sinif dəyişənlərim ən çox POD növləri və STL konteynerlərindən ibarətdir. Ona görə də, nadir hallarda mənimsəmə hesabatları və ya surəti qurucular yazmaq lazımdır, çünki onlar default olaraq həyata keçirilir. Əlavə et, es ...
27 yanvar tarixində təyin olundu '11 'də saat 20:51' də
5
Cavablar