日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

侯捷面向对象高级编程(二)

發布時間:2023/12/10 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 侯捷面向对象高级编程(二) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

侯捷面向對象高級編程(二)

轉換函數

  • 轉換函數沒有返回值,返回值就是double即函數名,不需要自己寫
  • 因為轉換函數一般不會改變其中內容,所以要加const限定

  • 兩條路都可以走,就回產生歧義,報錯

  • explict禁止自動轉換,于是4無法轉轉換為Fraction

pointer-like cliasses

  • ->作用之后還能繼續作用不會消耗掉
  • *sp中的*作用于sp上后返回*px,而->作用后不會消失

function-like classes,仿函數

namespace 命名空間

放在不同命名空間,讓彼此沒有關聯

class template

function template

member template

即使T1,T2確定了,U1,U2也可以變

可以嵌套,但是p.first必須能給first賦值,即U1,U2是T1,T2的子類

再舉一個例子,同理

specialization 模板特化

我的理解就是,對不同的類型,采取有不同的行為

partial specialization 模板偏特化

事先綁定一個參數

  • 如果不使用指針就用上面的情況 obj1
  • 如果使用指針就用右下的情況 obj2

數量不定的模板參數

print是遞歸調用,能打印出全部元素

void print() // 最后一個元素打印時調用 {} template<typename T ,typename... Types> void print(const T& first,const Types&... args) {std::cout << first<<std::endl;print(args...); } int main() {print(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); }

虛函數,虛指針

一種理解:繼承中函數繼承的是調用權

const

函數后面加const只用于成語函數

COW: copy on write

總結

以上是生活随笔為你收集整理的侯捷面向对象高级编程(二)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。