C++ 基础知识

  • 标准库的头文件省略了.h后缀

  • #pragam once

  • int main(int argc, char* argv[]),argc 给出了程序的参数的数目,argv包含了这些参数。

  • C++中可以在任何位置声明变量,并且可以在声明一个变量所在行之后的任意位置使用该变量, 但是建议在声明变量后给变量指定初始值

  • 类型转换

    bool somebool = (bool)someint;
    bool somebool = bool(someint);
    bool somebool = static_cast<bool>(someInt);
    
    

数组

  1. std::array ,C++ 11 引入了名为std::array的新型容器
  2. 标准数组以及新的std::array都具有固定的大小,在编译时必须知道这一点,在运行时数组不会增大或者缩小
  3. 动态分配的数组
int* myVariableSizeArray;
myVariableSizeArray = new int[arraySize];
myVariableSizeArray[1] = 2;
delete [] myVariableSizeArray; // 删除 
  1. 每次调用new或者new[] 时,都必须相应的调用delete或者delete[]
  2. 每次调用malloc()都必须响应的调用free()
  3. 为了避免常见的内存问题,应该使用智能指针而非普通指针。智能指针超过作用域时,智能指针会自动释放内存。

Const

为了遵循const-correctness原则,最好将不改变对象的任何数据成员的成员函数声明为const。相当于非const成员函数“修改器”,这些成员函数被称为“检测器”

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • C++运算符重载-下篇 本章内容:1. 运算符重载的概述2. 重载算术运算符3. 重载按位运算符和二元逻辑运算符4...
    Haley_2013阅读 5,320评论 0 49
  • 前言 把《C++ Primer》[https://book.douban.com/subject/25708312...
    尤汐Yogy阅读 13,153评论 1 51
  • main函数执行以前,还会执行什么代码? 答案:全局对象的构造函数会在 main 函数之前执行 static的应用...
    曾令伟阅读 5,199评论 0 2
  • 基础问题 1.static关键字和const关键字。 static: 作用于变量时:用static声明局部变量--...
    Natus_Vincere阅读 3,056评论 0 1
  • 困住我们的到底是什么? 一张充满压迫感的牌,看不清现状,看不清现实。我们永远无法了解我们自身或是这个所处的世界。永...
    小飞侠303阅读 2,361评论 0 1

友情链接更多精彩内容