函式鏈:middle(p,q).print( ) ;
例:
示例分析:
♠
\spadesuit
♠ 訪問函式get_x,get_y以及print函式均為const成員函式;
♠
\spadesuit
♠ distance和middle函式為了避免傳參時的拷貝和函式體內對實參的修改,指定形參為常引用型別;
♠
\spadesuit
♠ middle函式返回了乙個const point物件。middle函式也可以使用如下方式進行實現:
♠ 利用middle函式的返回值(乙個點物件)再呼叫print成員函式。這被稱作「函式鏈」;
♠
\spadesuit
♠ 在main函式中,宣告了兩個物件p和q,用q給p賦值,實現的是「邏輯拷貝」,又稱「淺拷貝」。
附示例**:
point.h
#ifndef point_h
#define point_h
#include
using
namespace std;
class
point
;#endif
point.cpp
#include
"point.h"
point::
point
(float a,
float b):x
(a),
y(b)
float point::
get_x()
const
float point::
get_y()
const
//偏移量
void point::
move
(float a,
float b)
void point::
print()
const
main.cpp
#include
#include
"point.h"
float
distance
(const point& p1,
const point& p2)
const point middle
(const point& p1,
const point& p2)
intmain()
c 中函式分檔案編寫簡單小例子
函式分檔案編寫四步驟 1.建立字尾名為.h的標頭檔案 2.建立字尾名為.cpp的原始檔 3.在標頭檔案中寫函式的宣告 4.在原始檔中寫函式的定義 判斷某點在某圓的位置 建立dot.h標頭檔案,只需對各變數和函式進行宣告即可 pragma once 防止標頭檔案重複包含 class dot 建立dot...
乙個簡單的pwn例子 read函式
內容 include void exploit void func intmain 我們要做的是利用溢位執行exploit函式 分析 先執行func函式,func函式裡有個read函式,read函式會讀取我們在螢幕上輸入的內容,但不會檢查內容的多少,全部複製到str裡,但str只能訪問20個,如果超...
C 乙個簡單的多執行緒例子
乙個是窗體 乙個是class 直接上 了,先來窗體的吧。窗體 引入命名空間 using system.threading 完整 namespace threadexample private void btn start click object sender,eventargs e private...