Свързани въпроси 'copy-constructor'

Автоматизация между контейнери на различни обекти с присвояване на копие
Имам разреден вектор от тип std::vector<SparseElement<T,I>> , където SparseElement е: template<typename T, typename I = unsigned int> struct SparseElement { I index; T value; //............ SparseElement...
118 изгледи

Съхраняване на обекти в STL вектор - минимален набор от методи
Какво е "минимална рамка" (необходими методи) на сложен обект (с изрично неправилни вътрешни данни), който искам да съхранявам в STL контейнер, напр. <vector> ? За моите предположения (пример за сложен обект Doit): #include...
1662 изгледи
schedule 11.10.2022

Как се обработват членовете на масива на C++ във функциите за контрол на копирането?
Това е нещо, което се чудех от дълго време. Вземете следния пример: struct matrix { float data[16]; }; Знам какво правят конструкторът и деструкторът по подразбиране в този конкретен пример (нищо), но какво да кажем за конструктора за...
5583 изгледи

Възможно ли е да се използва std::map в C++ с клас без оператор за копиране?
Използвам клас (обект), който няма оператор за копиране: той по принцип не може да бъде копиран в момента. имам std::map<int,Object> objects променлива, която изброява обекти с int идентификатор. Как мога да добавя обект към тази...
12642 изгледи
schedule 14.11.2022

Намерете списъка с променливи членове на клас и техните типове?
Никога не съм чувал, че е възможно, но питам с надеждата, че е възможно. За клас с много повече членски променливи от това: class A { public: SomeOtherClass* s; int i; int j; A() {} A(const A& soc): s(soc.s->Clone()), i(soc.i),...
12772 изгледи
schedule 26.10.2022

Копиране на конструктор и композиция
Имам връзка на композиция между клас A и B, class A { A(); //default constructor //EDIT A(const A &mA); // copy constructor //EDIT virtual ~A(); }; class B { B(A *pA); //constructor B(const B &mB) //copy constructor virtual...
1210 изгледи
schedule 01.12.2022

std::string конструктор за копиране НЕ е дълбоко в GCC 4.1.2?
Чудя се дали не съм разбрал нещо погрешно: дали конструкторът за копиране от std::string не копира съдържанието му? string str1 = "Hello World"; string str2(str1); if(str1.c_str() == str2.c_str()) // Same pointers! printf ("You will get...
3578 изгледи

Кога да предоставим дефиниран от потребителя конструктор на копиране и оператор за присвояване?
Трябва ли само да напишем конструктор за копиране и оператор за присвояване, когато имаме членове с данни за указател (защото в противен случай два указателя биха могли да сочат към един и същ обект, когато генерираният от компилатора копиращ ctor...
1202 изгледи

Конструктор за копиране на C++ Move и оператор за преместване на присвояване
Направих просто приложение с конструктор за копиране на преместване и оператор за присвояване на копие за преместване и за всеки от тях направих изявление cout само за да ми каже кои се изпълняват. Но по време на изпълнение не видях никакво изявление...
3951 изгледи

конструктор и поведение на конструктор за копиране в c++
Имам следния код: #include <iostream> using namespace std; class X { public: int g; X() { cout << "constr" << endl; } X(const X& ref1) { cout << "copy constr" << endl; } }; X f() { X ee; ee.g...
55 изгледи
schedule 22.10.2022

хмм добре благодаря ти. Бихте ли казали, че запазването на статуквото е оптимално за четливост или би било по-добре да използвате формата a=b=c?
55 изгледи
schedule 22.10.2022

Изтрит конструктор за копиране на член на кортеж причинява грешка
Тази част от кода #include <tuple> struct Foo { Foo(const int& value):value_(value){} //Foo(const Foo&)=delete; // delete copy constructor int value_; }; int main() { std::tuple<Foo> tup(std::move(Foo(1)));...
831 изгледи