C++
文章平均质量分 74
nomasp
Android 工程师
展开
-
【C++注意事项】1 数据类型及类型转换
如何选择类型1)当数值不可能为负时,选择无符号类型。2)当数值超过了int的表示范围时,选用long long。3)在算术表达式中不要使用char或bool,只有在存放字符串或布尔值时才使用它们。因为类型char在一些机器中是有符号的,而在另一些机器中又是无符号的。如果你需要使用一个不大的整数,那么明确指定它的类型是signed char或者unsigned char。4)执行浮点数运算选用doub原创 2015-05-20 18:56:32 · 2989 阅读 · 2 评论 -
【C++注意事项】2 变量声明和定义
不可能将所有的C++程序放到一个文件中咯,因此C++就支持了分离式编译(separate compilation)机制,它允许将程序分为若干个文件,每个文件可被独立编译。这样说明了,当你的程序有很多文件时,修改其中一个文件后不需要将所有文件都重新编译一遍,只需要编译修改过的就好,然后将它们都链接起来。C++是如何支持分离式编译的呢?通过将声明和定义分离开来。声明(declaration)使得名字为程原创 2015-05-20 20:59:58 · 2442 阅读 · 1 评论 -
【C++注意事项】3 引用
通俗来讲,引用(reference)就是给对象另外一个名字。1)引用必须被初始化int &ref; // 错误int val=10;int &ref2=val; // ref2指向val(val的另一个名字)在初始化变量时,初始值会被拷贝到新建的对象中。在定义引用时,程序把引用和它的初始值绑定(bind)在一起,而不是将初始值拷贝到引用。一旦初始化完成,引用将和它的初始值对象一直绑定在一起。因原创 2015-05-20 22:11:10 · 2499 阅读 · 0 评论 -
【C++注意事项】4 指针 Pointers
和上一节的引用类似,指针(pointer)是“指向(point to)”另外一种类型的复合类型。与引用类似,指针也实现了对其他对象的间接访问。然后指针和引用相比有许多不同。其一,指针本身就是一个对象,允许对指针赋值和拷贝,而且在指针的生命周期内它可以先后指向几个不同的对象。其二,指针无须在定义时赋初值。和其他内置类型一样,在块作用域内定义的指针如果没有被初始化,也将拥有一个不确定的值。因为引用不是对原创 2015-05-21 12:50:40 · 2845 阅读 · 0 评论 -
【C++注意事项】5 Top-level const , The auto and decltype Type Specifier
top-level constAs we’ve seen, a pointer is an object that can point to a different object. As a result, we can talk independently about whether a pointer is const and whether the objects to which it ca原创 2015-05-21 21:22:19 · 3175 阅读 · 0 评论 -
【C++注意事项】7 Library vector Type
List Initializer or Element Count?In a few cases, what initialization means depends upon whether we use curly braces or parentheses to pass the initializer(s). For example, when we initialize a vector<原创 2015-05-22 18:41:17 · 2433 阅读 · 0 评论 -
【C++注意事项】6 Library string Type
Processing Every Character? Use Range-Based forIf we want to do something to every character in a string, by far the best approach is to use a statement introduced by the new standard: the range for st原创 2015-05-22 17:25:43 · 2731 阅读 · 0 评论 -
一种巧妙的反转字符串的方法及思考过程
如题,需求是反转字符串,当然啦方法是有很多的,这种我觉得蛮有意思的^_^#include <string>#include <iostream>using namespace std;int main() { string s; cin>>s; for(int i = s.size(); i--; ) { cout<<s[i]; } cout原创 2015-12-22 14:37:46 · 2544 阅读 · 0 评论 -
日常小记:C++中的log10函数
今天有同学问我C++中有没有什么简单的办法可以求出两个数相加的和的位数,然后就有了如题的那种方法。log10(100)的返回值就是2,log(999)的返回值是二点几,不过如果你把返回值定位int型它就会自动转换成2了。#include<iostream>#include<cmath>using namespace std;int main(){ int a,b; while(ci原创 2015-12-15 19:32:25 · 8984 阅读 · 0 评论