首页 > 代码库 > C++learning_at_2014/12/14
C++learning_at_2014/12/14
cin >> 的格式,是从缓冲区读出空白分割符前的数据,即空格前的数据
getline(cin,参数);可以读入至回车前的数据。
c++是强类型,体现在,cin>>n时如果需要你输入一个整型,但你输入的是一个字符a,那么他就会返回一个负数,并且n被赋0;
当字符串过长时,可以以下表示:
const char* charstr = "this is one very long string " //直接回车换行
"so i will continue it on the next line";
string 类型的对象,可以吸收字符串,并且 其.length()返回该对象字符串的长度。
ostringstream strbuf; 可以吸收字符串和整型值,或者可以说,把输出到屏幕的数据输入到此对象中,并且利用strbuf.str();将此对象中的数据进行字符化,最后可以用于字符串输出。
在利用下述可以输出到文件中:
ofstream outf;
outf.open("mydata");
outf << strval; //strval是string类型
outf.close();
从文件中读取数据时,有两个操作
ifstream inf;
inf >> newstr >> lucky2; 这个的作用,直观上讲,是利用文件中的字符串为分割单位,每一个字符串之后的数据会被一次的利用inf >> newstr >> 送入变量中,不管类型对不对,而且只能从头依次,不能指定送出第几个数据。
下面是按行输出的:
ifstream inf;
string newstr;
inf.open("mydata");
while(not inf.eof()){
getline(inf,newstr);
cout << newstr <<endl;
}
inf.close();
指针大小都是整型,与其类型无关。
关于static ,在类中进行声明时,使用static,会等同与全局声明,没有实践验证过,但是在定义相关类成员时不应该加上static ,因为那样做会把定义限定在当前文件。
重载‘=’ : Fraction& operator= (...){}
转换构造函数,晕晕呼呼的,直观上看,是存在这种构造函数,它有多个参数,但其中有一部分已经在参数列表中被赋值了。所以之后调用构造函数时不许要向其提供所有参数,提供没有被赋值的参数就好了。就是调用时的实参数目比形参数目少。
函数声明后加const的居然也算是函数签名的一部分,也就是说void demo(int) 与void demo(int ) const
是两个重载函数,而不是冲突函数,既然如此,编译器如何分清这两种函数呢?
Q:在调用时,对有const后缀的 调用前函数名加c,例:cdemo(int x) 是对上述后者的调用,不加c则是对前者的调用。
小数常量在C++中默认为double型。例如 2.3 是double型。
本文出自 “developing_Rookie” 博客,请务必保留此出处http://8942041.blog.51cto.com/8932041/1589805
C++learning_at_2014/12/14