C++ Builder 初学问与答(十六)

2016-02-19 19:14 12 1 收藏

下面请跟着图老师小编一起来了解下C++ Builder 初学问与答(十六),精心挑选的内容希望大家喜欢,不要忘记点个赞哦!

【 tulaoshi.com - 编程语言 】

16.C/C++语言在CB中的一些特定用法  2)AnsiString是从Delphi中引进来的吗? !-- frame contents -- !-- /frame contents --   答:CB的核心组件VCL是用Object Pascal语言写出的,所以CB的VCL组件的属性有很多都是使用long string,例如:Text、 Name、Caption等属性都是使用Object Pascal的long string。基于此关系,CB只好建立了和Object Pascal的long string相应的类别,我们将它称为AnsiString。  3)AnsiString与String有什么区别?  答: C++ Builder在Sysdefs.h头文件中有这样的定义:  typedef  AnsiString String;  从这一点在看他二者是完全一样的,只是书写起来后者更方便一些,前者是意图更明了一些。  4)能介绍一下AnsiString类的一些常见函数及其用法吗?  答:当然可以了,下面就常见函数做一下简单介绍:  成员函数语法功能c_strchar *_fastcall c_str() const返回字符串数据的指针Deletevoid _fastcall Delete(int index,int count)由index处开始删除count个字符Insertvoid _fastcall Insert(const AnsiString& str,int index)由index处开始插入字符str到原字符串中IsEmptybool _fastcall IsEmpty() const返回字符串是否为空,true表示空字符串Lengthint _fastcall Length() const返回字符串长度LowerCaseAnsiString _fastcall LowerCase() const将字符串中的大写字母改写成小写UpperCaseAnsiString _fastcall UpperCase() const将字符串中的小写字母改写成大写Posint _fastcall Pos(cont AnsiString& substr)const;找出子字符串在原字符串中由第几个位置开始SubStringAnsiString _fastcall SubString(int index,int count)const返回由index处向后取count个字符ToDoubledouble _fastcall ToDouble() const将字符转成双精度数值ToIntint _fastcall ToInt() const将字符转成整形IntToStrAnsiString _fastcall IntToStr(int Value)将整形转成字符串TrimAnstString _fastcall Trim() const返回一个新的字符串,它会将原字符串前后空白或控制字符清除后再返回WideCharwchar_t fastcall WideChar(wchart* dest,int destsize)const转换AnsiString到一个宽字符数组(COM中常用) 更多内容请看C/C++技术专题专题,或
  
     5)AnstString成员函数与传统字符串函数有何不同之处?  答:我们可以通过二者的一个对照表来查看他们的之间的不同之处:
  AnsiString成员函数功能传统字符串函数=字符串拷贝strcpy+=字符串合并strcat+字符串连接无==,!+=,,=,,=字符串比较strcmpc_str()相互转换无,但可以利用指针实现Delete删除子字符串无Insert插入子字符串无Length求字符串长度strlenLowerCase字母转成小写strlwrPos找出子字符串strstrSetLength设置字符串长度无ToInt转成整形无ToDouble转成双精度sprintfUpperCase字母转成大写strupr
  
     6)如何实现传统字符串与AnsiString字符串的相互转换?  答:传统的C语言是使用字符来组成字符串的(字符串末尾必须有’

来源:http://www.tulaoshi.com/n/20160219/1620407.html

延伸阅读
10.菜单组件 77)问:菜单是Windows常用的用户界面。对于一个能够实际应用的程序,菜单是必不可少的组成部分。C++Builder中是怎样实现菜单的? 答:C++Builder为我们提供了两种菜单组件:一种是主菜单组件MainMenu;另一种是弹出菜单PopMenu组件。 !-- frame contents -- !-- /frame contents -- 主菜单组件的作用是在窗...
3. 按钮类组件 21)问:在进行Windows程序界面设计中,经常会用到按钮,在C++Builder中,按钮一定是通过按钮组件来实现的吗? !-- frame contents -- !-- /frame contents -- 答:是的,并且C++Builder的按钮类组件十分丰富。BCB提供了两类按钮类组件:一类是执行类按钮,另一类是信息类按钮。所谓执行类按钮是指...
11.工具条组件 87)问:工具条是Windows编程经常要用的, C++Builder能不能实现这个功能呢? !-- frame contents -- !-- /frame contents -- 答:当然可以,工具条是由许多具有图形的按钮组成的,这些按钮被分隔符分隔成许多组,每个组都能够完成特定的工作。工具条上的按钮具有与位图按钮相似的特性——可以拥有多个位图,...
第二部分:快速提高 !-- frame contents -- !-- /frame contents -- 好久以来有不少朋友问我,《C++ Builder问与答》为什么不继续写了?我也一直在思考还应该写下去不?CBX的推出,加之宝兰公布不在出新的CB版本,让我们这些一直喜爱CB的人不清楚下一个方向到底在何处?当然真的希望CB会继续,而不要倒下,但对于...
53)问:能介绍一下TTreeNodes与TTreeNode? 答:在BCB中,树状视图的节点是通过TTreeNodes对象来治理的,通过这个对象可以对树状视图进行动态的增加、删除、插入、移动节点等操作。而每一个节点都是一个TTreeNode对象。 TTreeNode的主要属性和函数: !-- frame contents -- !-- /frame contents -- Count:这个属性用来...

经验教程

873

收藏

80
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部