| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 522 人关注过本帖
标题:本人菜鸟,编写程序时,发现了几个问题,求大神一一解释
只看楼主 加入收藏
小强a
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2014-10-30
结帖率:100%
收藏
已结贴  问题点数:15 回复次数:4 
本人菜鸟,编写程序时,发现了几个问题,求大神一一解释
1:C#中 +=和=有什么区别,尤其是他两个接在textBox.text后面时各有什么含义?2:从 (PS:int f3=1)  textBox2.Text += f3 和textBox2.Text = Convert.ToString(f3);这两句话作用相同,都是把f3从textBox2显示,可不可以理解为+=是一种类型转换符?3:textBox.text能直接=什么类型而不用转换?我现在只知道,后面能直接跟是字符型的,而我曾经试了一下,直接跟整型,如,textBox.text=f3;当即报错:无法将类型int
隐式转换为string。而我这样输入时textBox.text= f3 + "";就是正确的,这是为什么呢?,这样的话,这三种形式:1:textBox2.Text = Convert.ToString(f3);2:textBox2.Text += f3;3:textBox.text= f3 + "";的作用都是一样的喽,作用原理都一样?

[ 本帖最后由 小强a 于 2014-11-2 19:18 编辑 ]
搜索更多相关主题的帖子: 编写程序 
2014-11-01 21:59
stop1204
Rank: 9Rank: 9Rank: 9
来 自:福建省
等 级:贵宾
威 望:22
帖 子:295
专家分:1151
注 册:2013-9-8
收藏
得分:15 
还没接触过C# . 不过表面上看你那是一个文本框吧.
那么就是只是在 textBox2原有的文本上面再加入 f3
C++里面的 +=  就是  a += b  (a = a + b)
不能隐式转换就是需要用到强制转换.
你找一下C#应该有强制转换的函数.

hl928452957@gmail点com

2014-11-02 07:44
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
C#中+=和=的法则与C/C++是一样的

授人以渔,不授人以鱼。
2014-11-02 22:03
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
至于后面的问题,那是C#的数据是可以装箱为对象,有对象重载行为,不是什么强制转换。TextBox.Text永远是字符串类型,int不能赋值给string,但int+string的时候,int被装箱为对象,此时编译器编译插入的代码是int变成ToString()后与string相加,那是字符拼接。

textBox2.Text += f3,实际上是textBox2.Text = textBox2.Text + f3,即string+int,处理如上述。

授人以渔,不授人以鱼。
2014-11-02 22:43
小强a
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2014-10-30
收藏
得分:0 
多谢大神指教,问题已解决
2014-11-03 10:02
快速回复:本人菜鸟,编写程序时,发现了几个问题,求大神一一解释
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024631 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved