C++学习笔记(零)

C++学习笔记

序章

C++内容:
  1. 基本元素
  2. Objects(对象) & Class(类)
  3. Inheritance(继承) & Polymorphism(多态)
  4. Exceptions(异常) & Templates(模板)
  5. C++ Standard Library
C++阅读推荐
  1. Thinking in C++, 2nd Edition, Bruce Eckel
  2. C++ primer, 5th Edition, Stanley Lippman(语法不清楚时可以看)
  3. The C++ Programmer Language, 4rd Edition, Bjarne Stroustrup (接触C++一段时间后可以看)
  4. Essential C++, Stanley Lippman (一般般,可以快速过一遍)
  5. (more) Effective C++, 3rd 2005, (如何高效使用C++)
  6. Effective Modern C++, 2014
  7. Inside The C++ Object Model, Stanley Lippman(底层与细节)
  8. Information: Download books and code(vol.1)
    http://www.mindview.net/Books/DownloadSites/
Preparation

one C++ Compiler(gcc/g++, visual c++, clang)
准备好一个c++的编译器即可,不管什么地方都可以写代码,不过应该会更多的使用IDE吧…

那么开始写第一个C++程序吧
程序员的hello world!
//hello.cpp
#include <iostream>
int main()
{
    std::cout << "hello world!\n";
}
其中 “
C++源文件处理过程
  1. C++源文件(.cpp / .h)
  2. 预处理(宏展开,加入头文件)
  3. 编译(处理语法问题)
    1. 各个编译单元独立处理
    2. 任何标识符使用前必须声明
    3. 声明不会分配空间
    4. 定义会分配空间,而且可以充当声明
  4. 链接(*.obj)
  5. 可执行文件(*.exe)
以上文的“hello.cpp”为例

具体的处理过程如下:
1. 编译 hello.cpp 生成 hello.obj (目标文件)
2. 链接 hello.cpp 生成 hello.exe (可执行文件)
3. 运行hello.exe(或hello)

ODR原则

One Definition Rale
任何标识符必须有定义并且只能定义一次
一条建议:声明放在头文件中,定义放在cpp文件中

IDE

Visual Studio介绍
1. *.sln 解决方案文件 (包含···工程,显示版本)
2. *.vcxproj 工程文件 (包含源文件)
3. *.obj 在 Debug 文件夹下 (product的Debug下)
4. *.exe 在 Solution的Debug下
其他IDE还有很多,找自己喜欢用的就好
那么用IDE写个程序吧

第二个程序

加强版hello

//hello.cpp
#include <iostream>
#include <string.h>
//using namespace std;  //表示std的名称空间都开放了,之后就不用写“std::”了
//using std::cout;  //表示开放了cout,以后的cout都不用在前面“std::”了
int main()
{
    std::string name;
    std::cin >> name;
    std::string greating = "hello " + name + "~";
    std::cout << greating << std::endl;
}

运行一下试试会发生什么吧~

以上内容即为序章
(内容大多源自老师讲课)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值