1. 程式人生 > >C++例項---建構函式的過載

C++例項---建構函式的過載

執行環境:macOS shell
程式碼:

#include <iostream>
#include <iomanip>
#include <string>

using namespace std;

class point
{
private:
    double fx, fy;
public:
    point();
    point(double x, double y);
    void showpoint();
};

point::point()
{
    fx = 0.0;
    fy = 0.0;
}
point::point(double
x, double y = 5.5) { fx = x; fy = y; } void point::showpoint() { cout<<fx<<" "<<fy<<endl; } int main () { point p1; cout<<"the fx and fy of p1 : "; p1.showpoint(); point p2(10); cout<<"the fx and fy of p2 : "; p2.showpoint(); point p3(1.1
,2.0); cout<<"the fx and fy of p3 : "; p3.showpoint(); return 0; }

執行結果:
這裡寫圖片描述

相關推薦

C++例項---建構函式過載

執行環境:macOS shell 程式碼: #include <iostream> #include <iomanip> #include <string> using namespace std; class poi

C++拷貝建構函式和運算子過載(VC實現)

String.h檔案: #ifndef STRING_H #define STRING_H #include <ostream> using namespace std; class String { public: String(){ m_pStr = nullptr

C++ 複製建構函式和運算子過載示例

string1.h // // Created by lance on 10/16/18. // #ifndef CPP_PRIMER_STRING1_H #define CPP_PRIMER_STRING1_H #include <iostream> u

C++ 拷貝建構函式過載賦值操作符不能相互呼叫

拷貝建構函式呼叫過載賦值操作符,過載賦值操作符呼叫拷貝建構函式的寫法都是沒有意義的。首先:拷貝建構函式的存在意義--------是通過已有的物件構造新的物件,構造完畢後才有兩個物件;過載賦值操作符的意義-----------將一個物件的值賦給另一個物件,兩個物件都已經構造完畢了。拷貝建構函式----呼叫---

C++:拷貝建構函式&賦值運算子的過載函式

拷貝建構函式:          用一個已經存在的物件來生成一個相同型別的新物件。(淺拷貝)預設的拷貝建構函式:          如果自定義了拷貝建構函式,編譯器就不在生成預設的拷貝建構函

C++ 複製建構函式和賦值運算子過載函式

宣告一個空的類testsize,sizeof(testsize)為1,為其宣告建構函式和解構函式,依舊為1 建構函式不能使用關鍵字virtual,解構函式可以 一旦類中存在虛擬函式,就會為該類生成虛擬函式表,並在每一個例項中新增一個指向虛擬函式表的指標,從而大小為一個指標大

C++複製建構函式過載賦值運算子

C++的複製建構函式, 賦值建構函式, 有時候會有點暈,下面總結一下: 首先來談一下複製建構函式: 程式碼: #include<iostream> using namespace std; #include<cstring> #include<

C++複製建構函式過載賦值操作符

內容整理自: 函式原型 在C++中建立一個類,這個類中肯定會包括建構函式、解構函式、複製建構函式和過載賦值操作。 複製建構函式是一種特殊的建構函式,其作用也是為類的成員初始化以及為物件的構造分配儲存空間。函式的名稱必須和類名稱一致,無返回型別,它的唯一的一個引數

c++拷貝建構函式遇上等號過載

參加完美世界的筆試題目,有個題目是拷貝建構函式呼叫,同時定義了“=”過載,這個時候 =過載函式是否會被呼叫? 做了個實驗,呼叫拷貝建構函式進行初始化的時候,是不會呼叫=過載的。 #include<iostream> #include<vector>

c++拷貝建構函式和賦值操作符過載

c++拷貝建構函式: class A { A(const A& a); .... } 由於拷貝建構函式中,一般不允許對原物件進行修改,因此一般在引數中使用const關鍵字進行限制。 拷貝建構函式一般用於需要new記憶體等操作。如果不允許使用拷貝建

c++拷貝建構函式、賦值運算子=過載、深拷貝與淺拷貝

 關鍵詞:建構函式,淺拷貝,深拷貝,堆疊(stack),堆heap,賦值運算子 摘要:     在面向物件程式設計中,物件間的相互拷貝和賦值是經常進行的操作。     如果物件在宣告的同時馬上進行的初始化操作,則稱之為拷貝運算。例如:         class1 A(

【轉載】預設建構函式建構函式過載

轉載自:https://blog.csdn.net/simon_2011/article/details/78129898  作者:simon_syeming  本文主要總結了預設建構函式的相關用法和建構函式過載,旨在能夠對平時的專案開發起到一定的夯實基本功的作用,言簡意

C++各種建構函式的寫法【轉】

  (轉自:https://blog.csdn.net/baiyq369/article/details/54926983) 建構函式 ,是一種特殊的方法 。主要用來在建立物件時初始化物件, 即為物件成員變數賦初始值,總與new運算子一起使用在建立物件的語句中 。特別的一個類可以有

38.C++修飾建構函式的explicit關鍵字

C++ explicit關鍵字的作用主要是用來修飾類的建構函式,表明該建構函式是顯式的,禁止單引數建構函式的隱式轉換。 如果C++類的建構函式有一個引數,那麼在編譯的時候就會有一個預設的轉換操作:將該建構函式對應資料型別的資料轉換為該類物件,如下面所示: class MyClass { publ

C++:建構函式的初始化列表,以及初始化的順序

建構函式的初始化值列表: 對於物件的資料成員而言,初始化和賦值是有區別的。 當資料成員是 const 、引用,或者屬於某種未提供預設建構函式的類型別的話,就必須通過建構函式的初始值列表為這些成員提供初始值,否則就會引發錯誤。 // 錯誤:ci 和 ri 必須初始化 CobstRef::C

C++ 拷貝建構函式程式碼筆記

拷貝建構函式是一種特殊的建構函式,它在建立物件時,是使用同一類中之前建立的物件來初始化新建立的物件。拷貝建構函式通常用於: 通過使用另一個同類型的物件來初始化新建立的物件。 複製物件把它作為引數傳遞給函式。 複製物件,並從函式返回這個物件 #include

C++ 拷貝建構函式this指標練習

總時間限制:  1000ms   記憶體限制:  65536kB // 在此處補充你的程式碼 描述 程式填空,使其按要求輸出 #include <iostream> using namespace std; class A {

C++ 拷貝建構函式練習

總時間限制:  1000ms   記憶體限制:  65536kB // 在此處補充你的程式碼 描述 程式填空,使其輸出9 22 5 #include <iostream> using namespace std; class

C++學習--建構函式和解構函式

建構函式是對物件進行初始化的成員函式,建構函式的名字和類的名字是一樣的,建構函式不用特定的呼叫,是在類例項化中,自動呼叫。建構函式可以有多個,也就是可以進行建構函式過載,例項化過程中會根據建構函式的引數型別、個數進行呼叫。解構函式和建構函式相反,是完成一些清理工作,比如釋放記憶體或者其他的工作。解構

C++(建構函式與解構函式

C++(建構函式與解構函式) 1. 建構函式 用於對類的物件的初始化,建構函式名與類名相同。 可在類內直接定義,也可在類內宣告類外定義(定義時在函式名前加類名::)。 建構函式無返回值型別。 class C { public: C(int a,int b);//類