鱼C论坛

 找回密码
 立即注册
查看: 2644|回复: 0

[C++个人笔记] 62.调用构造函数进行类型转换

[复制链接]
发表于 2013-3-21 14:04:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 (@_@) 于 2013-3-21 14:42 编辑 ' O2 n2 j9 J" |/ e1 W
0 T" l. j% M( C6 L, o
Unnamed QQ Screenshot20130321140150.gif
/ H5 _4 D+ e& M6 h2 @! A3 i, M#include <iostream>
/ f! w' ?* P* r# J5 b# y% `
# `* _4 L( |5 j$ F1 O. kusing namespace std;
8 c( s( K$ [& V9 {0 W) ~' Y. \. d+ U+ u7 a: i% k
class CA& s) g1 C* y- A! u) ^3 f
{
/ j$ ?! O, _& L) v# v4 Ipublic:
; V4 i# _1 e$ t) i8 r        explicit CA(int );//explicit只能显示强制转换,即:a=A(1000),不能隐式强制转换:a=1000;explicit可以防止出现问题
! v8 h$ p4 ~$ \        ~CA();
; l( ?7 t) ]/ R; j2 g' }        void get();4 i4 i+ p0 g2 @
) X3 s3 o: T. k, b
private:
# Y. u5 {" u$ G$ q' l& c9 h        int i;
$ r2 m  }9 _  m+ q};) d( k, L/ }& Z3 R" z1 w

& q! z% t$ R' n' k5 tCA::CA(int x)) p- i6 q/ N* n* V- V3 {2 e
{
. B' f: \$ H8 [9 i$ T8 T9 `& _        i=x;7 c  V% J, H$ ?* ^5 M
        cout<<"构造函数在执行..."<<i<<endl;
) N+ a1 g0 \- n3 l) m- k; L}. X! s1 _* h6 f4 n
void CA::get()
3 I# L8 |* j0 b! @' I: P{
9 u; d% K4 d% P9 c        cout<<i<<endl;1 T0 p+ f/ R* M& i5 P/ V. p5 f
}. d: B" K* h7 |  o$ P
+ S2 m, P% m0 p* V6 E
CA::~CA()% |' z" X4 `9 W' f4 {7 E$ k0 ]$ k
{% d" N& Y# p( `; z8 D0 e
        cout<<"析构函数在执行..."<<i<<endl;
) j( \9 l8 Q+ p3 M1 F: l}/ d; v1 `' P8 C7 V) j  q
. g7 W4 H6 E" _# _
int main(void)
2 A6 v5 g: Y5 K3 h{2 L8 c2 v7 U' e3 a/ x0 N
        CA a(99);  n' N7 P1 ~! A- p) f
        a.get();
' w  ?% ]4 B" y9 }; |        a=CA(1000);4 |' }% _. {9 N! j3 P8 k6 O
7 G! ^1 ~& C& i1 T1 a6 E, z6 }
        return 0;
; `3 C3 k. |) o$ x5 c}
5 u" y& W( n- Y- F% S  \: u* G3 C2 w6 B# A2 [
小甲鱼最新课程 -> https://ilovefishc.com

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-11 10:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表