C 類中拷貝函式的作用場景

2021-10-20 18:32:34 字數 1023 閱讀 5620

#include

using

namespace std;

class

person

person

(int age)

person

(const person& p)

};

void

test01()

intmain()

void

dowork

(person p)

void

test02()

intmain()

person dowork2()

void

test03()

intmain()

通過返回物件的位址來看看是否確確實實地新建了物件

下面針對test02來看看輸出結果

使用codeblock

使用vs

在這裡插入描述

發現位址都是不一樣的,那確實新建了新的物件

預設情況下,c++編譯器至少給乙個類新增三個函式

現在把之前設定的拷貝函式給刪掉

person類的定義

class

person

person

(int age)

~person()

intgetage()

};

main.cpp

void

test04()

intmain()

拷貝建構函式應用場景分析

拷貝建構函式又叫複製建構函式,是一種特殊的建構函式,它由編譯器呼叫來完成一些基於同一類的其他物件的構建及初始化。有四個應用場景。class aa aa const aa obj2 這裡即拷貝建構函式 aa protected private int a 第乙個應用場景 定義變數並初始化 建立乙個全域...

拷貝建構函式應用場景之二

include using namespace std class test test int x,int y test const test another void printt test private int m x int m y 場景4 test func2 匿名的物件 temp 匿名物...

C語言 volatile的作用與使用場景

今天完成公司的任務,突然想起來在除錯過程中遇到了乙個問題是這樣的 我在主函式裡面寫了乙個while x 的迴圈,想在中斷裡面去改變這個變數x,以達到主函式裡面退出while迴圈的目的。但是結果並不是這樣的,我的 一直停在了while迴圈裡面。後面我諮詢了一位大哥,然後他告訴我在變數i前面加上乙個vo...