文章标签 ‘c++’

首先,为了在我们的程序中使用string类型,我们必须包含头文件 <string>。如下: #include <string> //注意这里不是string.h string.h是C字符串头文件,,注:现在有3个引用<string>标准的c++ <ctring>标准的c <string.h>旧的c,三种一般都支持,如果需要同时使用string类型和strcmp等函数,则需要引入两个<string><cstring>或者<string><string.h> 1.声明一个C++字符串 声明一个字符串变量很简单: string Str; 这样我们就声明了一个字符串变量,但既然是一个类,就有构造函数和析构函数。上面的声明没有传入参数,所以就直接使用了string的默认的构造函数,这个函数所作的就是把Str初始化为一个空字符串。String类的构造函数和析构函数如下: a)       string s;     //生成一个空字符串s b)       string s(str) //拷贝构造函数 生成str的复制品 c)       string s(str,stridx) //将字符串str内“始于位置stridx”的部分当作字符串的初值 d)       string s(str,stridx,strlen) //将字符串str内“始于stridx且长度顶多strlen”的部分作为字符串的初值 e)       string s(cstr) //将C字符串作为s的初值 f)       string s(chars,chars_len) //将C字符串前chars_len个字符作为字符串s的初值。 g)       string s(num,c) //生成一个字符串,包含num个c字符 h)       string s(beg,end) //以区间beg;end(不包含end)内的字符作为字符串s的初值 i)       s.~string() //销毁所有字符,释放内存 都很简单,我就不解释了。 2.字符串操作函数 这里是C++字符串的重点,我先把各种操作函数罗列出来,不喜欢把所有函数都看完的人可以在这里找自己喜欢的函数,再到后面看他的详细解释。 a) =,assign()      //赋以新值 [...]

2010年8月13日14:18 | 没有评论
分类: 程序设计
标签: ,

问题: 1。类编译后的结构,诸如this指针,原理是什么。是不是一个对象指针? 2。问题:怎样实现例如telnet一样登录入程序,list显示 程序数据 原理: 1。每个类函数在编译的时候都在其参数后面隐藏加入了this指针,所以类函数也是普通的函数,只不过是c++将他设计的好像是对象的部份,其他纯OO不知道是怎么处理的 2。虚函数就是继承就是多态的最终实现。虚函数指针,和vtable 3。对于虚函数,如果进行对象分割的处理,如果将一个对象强制转换为其父对象,那么他们将执行其父对象的的方法。如果强制转换的仅仅是对象的指针,那么依然执行的是自己的方法。 4。静态成员,必须要初始化,但是不能在构造里面初始化,因为构造有可能要执行很多次。静态成员基本上可以作全局变量来使用。静态方法,因为没 有this指针,所以,不能处理类里面的数据。那么创建一个含有类对象参数的静态方法,并且总是传递this指针进去,会怎么样呢?能不能当作会调呢?

2008年9月24日17:26 | 没有评论
分类: 程序设计
标签: ,