An Entity of Type: company, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org

In the C++ programming language, the assignment operator, =, is the operator used for assignment. Like most other operators in C++, it can be overloaded. The copy assignment operator, often just called the "assignment operator", is a special case of assignment operator where the source (right-hand side) and destination (left-hand side) are of the same class type. It is one of the special member functions, which means that a default version of it is generated automatically by the compiler if the programmer does not declare one. The default version performs a memberwise copy, where each member is copied by its own copy assignment operator (which may also be programmer-declared or compiler-generated).

Property Value
dbo:abstract
  • In the C++ programming language, the assignment operator, =, is the operator used for assignment. Like most other operators in C++, it can be overloaded. The copy assignment operator, often just called the "assignment operator", is a special case of assignment operator where the source (right-hand side) and destination (left-hand side) are of the same class type. It is one of the special member functions, which means that a default version of it is generated automatically by the compiler if the programmer does not declare one. The default version performs a memberwise copy, where each member is copied by its own copy assignment operator (which may also be programmer-declared or compiler-generated). The copy assignment operator differs from the copy constructor in that it must clean up the data members of the assignment's target (and correctly handle self-assignment) whereas the copy constructor assigns values to uninitialized data members. For example: My_Array first; // initialization by default constructorMy_Array second(first); // initialization by copy constructorMy_Array third = first; // Also initialization by copy constructorsecond = third; // assignment by copy assignment operator (en)
  • В C++, оператор присвоєння, '=', це оператор використовний для присвоєння . Як і більшість інших операторів в С++, він може бути перевантаженим. Оператор присвоєння копіюванням, часто він називається просто «оператор присвоєння», це особливий випадок оператора, де джерело (права частина) і призначення (ліва частина) одного й того самого класу. Це одна зі спеціальних функцій членів, це означає, що цей оператор автоматично створюється компілятором, якщо його не визначив розробник. Версія створена компілятором виконує почленне копіювання, де кожний з членів копіюється за допомогою свого власного оператора присвоєння (який у свою чергу може бути визначений програмістом або компілятором). Оператор присвоєння копіюванням відрізняється від конструктора копіювання тим, що він має очистити члени даних об'єкта по лівий бік оператора присвоєння (і також вірно обробити самоприсвоєння), тоді як конструктор копіювання надає значення неініціалізованим членам. For example: My_Array first; // ініціалізація конструктором по замовченнюMy_Array second(first); // ініціалізація конструктором копіюванняMy_Array third = first; // також конструктором копіюванняsecond = third; // присвоєння через оператор присвоєння копіюванням (uk)
  • 在C++程式語言裡,設定運算子(英文:assignment operator)是用等號<b> = </b>符號。就像其他的C++運算子一樣,它可以作為多載。 複製設定運算子是一個特別的設定運算子,通常是用來把已存在的物件指定給其他相同類別的物件。它是一個特別的成員函式,如果程式設計師沒有定義這個成員函式,那麼編譯器會自動地產生這個成員函式。編譯器產生的程式碼是以單一成員進行物件複製的動作。 複製設定運算子,這個成員函式與複製建構子的相異點在於,它一定會清除目標物件的資料成員(以及確實掌控自我設值的動作),而複製建構子不會初始化類別的資料成員。 以下是原始碼的範例: My_Array first; // 由預設建構子做初始化動作My_Array second(first); // 由複製建構子做初始化動作My_Array third = first; // 這個也是由複製建構子做初始化動作second = third; // 由複製設定運算子做設定的動作 (zh)
  • Операция присваивания в языке программирования C++ обозначается знаком '='. Как и другие операторы в C++, она может быть перегружена. Операция присваивания копированием - особый вид операции присваивания, используемый для присваивания объектов одного класса друг другу. Является одним из и генерируется автоматически компилятором в случае, если нет явного объявления программистом. Код, сгенерированный компилятором, выполняет побитовое копирование. Операция присваивания копированием отличается от конструктора копирования тем, что должна очищать члены-данные цели присваивания (и правильно обрабатывать самоприсваивание), тогда как конструктор копирования присваивает значения неинициализированным членам-данным. Например: My_Array first; // инициализация конструктором по умолчаниюMy_Array second = first; // инициализация конструктором копированияsecond = first; // присваивание операцией присваивания копированием В качестве особого случая следует отметить следующий вариант инициализации конструктором копирования: My_Array second = My_Array; В этом случае компилятор (например VC2013) сразу же без всяких опций оптимизации выполняет оптимизацию возвращаемого значения (RVO, return value optimization) и конструктор копирования не вызывается. (ru)
dbo:wikiPageExternalLink
dbo:wikiPageID
  • 7789356 (xsd:integer)
dbo:wikiPageLength
  • 6015 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1121720372 (xsd:integer)
dbo:wikiPageWikiLink
dbp:wikiPageUsesTemplate
dcterms:subject
gold:hypernym
rdf:type
rdfs:comment
  • 在C++程式語言裡,設定運算子(英文:assignment operator)是用等號<b> = </b>符號。就像其他的C++運算子一樣,它可以作為多載。 複製設定運算子是一個特別的設定運算子,通常是用來把已存在的物件指定給其他相同類別的物件。它是一個特別的成員函式,如果程式設計師沒有定義這個成員函式,那麼編譯器會自動地產生這個成員函式。編譯器產生的程式碼是以單一成員進行物件複製的動作。 複製設定運算子,這個成員函式與複製建構子的相異點在於,它一定會清除目標物件的資料成員(以及確實掌控自我設值的動作),而複製建構子不會初始化類別的資料成員。 以下是原始碼的範例: My_Array first; // 由預設建構子做初始化動作My_Array second(first); // 由複製建構子做初始化動作My_Array third = first; // 這個也是由複製建構子做初始化動作second = third; // 由複製設定運算子做設定的動作 (zh)
  • In the C++ programming language, the assignment operator, =, is the operator used for assignment. Like most other operators in C++, it can be overloaded. The copy assignment operator, often just called the "assignment operator", is a special case of assignment operator where the source (right-hand side) and destination (left-hand side) are of the same class type. It is one of the special member functions, which means that a default version of it is generated automatically by the compiler if the programmer does not declare one. The default version performs a memberwise copy, where each member is copied by its own copy assignment operator (which may also be programmer-declared or compiler-generated). (en)
  • В C++, оператор присвоєння, '=', це оператор використовний для присвоєння . Як і більшість інших операторів в С++, він може бути перевантаженим. Оператор присвоєння копіюванням, часто він називається просто «оператор присвоєння», це особливий випадок оператора, де джерело (права частина) і призначення (ліва частина) одного й того самого класу. Це одна зі спеціальних функцій членів, це означає, що цей оператор автоматично створюється компілятором, якщо його не визначив розробник. Версія створена компілятором виконує почленне копіювання, де кожний з членів копіюється за допомогою свого власного оператора присвоєння (який у свою чергу може бути визначений програмістом або компілятором). (uk)
  • Операция присваивания в языке программирования C++ обозначается знаком '='. Как и другие операторы в C++, она может быть перегружена. Операция присваивания копированием - особый вид операции присваивания, используемый для присваивания объектов одного класса друг другу. Является одним из и генерируется автоматически компилятором в случае, если нет явного объявления программистом. Код, сгенерированный компилятором, выполняет побитовое копирование. В качестве особого случая следует отметить следующий вариант инициализации конструктором копирования: My_Array second = My_Array; (ru)
rdfs:label
  • Assignment operator (C++) (en)
  • Операция присваивания в С++ (ru)
  • Оператор присвоєння (C++) (uk)
  • 設定運算子 (zh)
owl:sameAs
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License