博客
关于我
【C++】谭浩强《C++面向对象程序设计》-学习笔记
阅读量:553 次
发布时间:2019-03-09

本文共 1427 字,大约阅读时间需要 4 分钟。

C++开发入门基础知识

1. 输出与输入

C++是一种通用编程语言,由Bjarne Stroustrup在1983年首创。语言特点强调面向对象编程和标准化。

1.1 输出机制

C++程序的输出主要依赖于<iostream>头文件。常用的输出流对象包括cout,而<<为插入运算符。例如:

#include 
using namespace std; // 使用标准命名空间int main() { cout << "Hello, World!" << endl; return 0;}

endl控制符与\n功能相同,用于换行。

1.2 输入机制

输入流对象为cin,提取运算符为>>。例如:

int a, b;cin >> a >> b;

输入值间需使用空格或换行符分隔。

2. 数据类型与常量

2.1 常量定义

使用const定义常量,确保其不可修改。例如:

const int MAX_VALUE = 100;

3. 类与对象

3.1 类的初始化

类的数据成员在定义时不能直接初始化。只有公有数据成员可以在对象定义时初始化。例如:

class Time {public:    Time(int hour, int minute, int sec) {        hour = 0; minute = 0; sec = 0;    }};Time t1 = {14, 56, 30};

3.2 构造函数

构造函数的作用是初始化对象。无参数构造函数默认生成,无法修改成员变量值。带参数构造函数可实现不同对象的个性化初始化。例如:

class Box {public:    Box(int h = 0, int w = 0, int len = 0) : height(h), width(w), length(len) {}};

3.3 析构函数

析构函数用于释放资源。每个类只能有一个析构函数,且不能返回值。例如:

~Box() {    // 释放资源}

4. 指针与内存管理

4.1 指针基础

指针存储对象地址,使用*解除引用。例如:

int jumbo = 23;int *pe = &jumbo;

4.2 指针应用

通过指针访问对象成员或函数。例如:

int *p1 = &t1.hour;void (Time::*p2)() = &Time::get_time;t1.*p2();

5. 常用注意事项

5.1 编译器错误处理

  • 非静态成员引用需与对象结合。
  • switch语句需在case后加{}

6. 字符串处理

使用<string>头文件定义字符串变量。例如:

#include 
string str = "Hello";string another = "World";

7. 模板功能

定义通用函数或类。例如:

template 
class Util {public: static T create(T &obj) { // 通用创建逻辑 }};

8. 标准库使用

包括必要的头文件,正确使用控制符如setw进行格式化输出。例如:

#include 
cout << setw(5) << "Name:" << name << endl;

通过以上知识,您可以快速入门C++编程,逐步掌握面向对象编程的核心概念。

转载地址:http://drwsz.baihongyu.com/

你可能感兴趣的文章
VM16+ubuntu20.04+win10如何固定虚拟机的ip (固定IP)
查看>>
OpenLayers学习一:地图加载(以类为接口)
查看>>
OpenLayers学习三:地图旋转及地图跳转到某一点的方式(以类为接口)
查看>>
OpenLayers学习二:点标记的添加删除和修改(以类为接口)
查看>>
Openlayers实战教程学习大纲及引导
查看>>
Openlayers实战:LayerGroup添加删除显示隐藏
查看>>
Openlayers实战:loadstart和loadend事件
查看>>
Openlayers实战:modifystart、modifyend互动示例
查看>>
Openlayers实战:moveend事件,利用calculateExtent获取地图左上和右下的坐标
查看>>
Openlayers实战:overlay上播放视频
查看>>
Openlayers实战:select简介及select选择feature实战
查看>>
Openlayers实战:个性化比例尺
查看>>
Openlayers实战:使几何图形适配窗口
查看>>
Openlayers实战:列表与图层双向信息提示
查看>>
Openlayers实战:判断共享单车是否在电子围栏内
查看>>
Openlayers实战:利用turf获取两个多边形的交集、差集、并集
查看>>
Openlayers实战:加载Bing地图
查看>>
Openlayers实战:加载CSV文件
查看>>
Openlayers实战:加载GeoJSON
查看>>
Openlayers实战:加载geoserver发布的WMS数据
查看>>