博客
关于我
【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/

你可能感兴趣的文章
OpenCV与AI深度学习 | 实战 | 使用YOLOv8 Pose实现瑜伽姿势识别
查看>>
OpenCV与AI深度学习 | 实战 | 使用YoloV8实例分割识别猪的姿态(含数据集)
查看>>
OpenCV与AI深度学习 | 实战 | 使用姿态估计算法构建简单的健身训练辅助应用程序
查看>>
OpenCV与AI深度学习 | 实战 | 基于OpenCV和K-Means聚类实现颜色分割(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战 | 基于YoloV5和Mask RCNN实现汽车表面划痕检测(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战 | 基于YOLOv9+SAM实现动态目标检测和分割(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战 | 基于YOLOv9和OpenCV实现车辆跟踪计数(步骤 + 源码)
查看>>
OpenCV与AI深度学习 | 实战 | 文本图片去水印--同时保持文本原始色彩(附源码)
查看>>
OpenCV与AI深度学习 | 实战—使用YOLOv8图像分割实现路面坑洞检测(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战篇——基于YOLOv8和OpenCV实现车速检测(详细步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战|OpenCV实时弯道检测(详细步骤+源码)
查看>>
OpenCV与AI深度学习 | 实践教程|旋转目标检测模型-TensorRT 部署(C++)
查看>>
OpenCV与AI深度学习 | 工业缺陷检测中数据标注需要注意的几个事项
查看>>
OpenCV与AI深度学习 | 干货 | 深度学习模型训练和部署的基本步骤
查看>>
OpenCV与AI深度学习 | 手把手教你用Python和OpenCV搭建一个半自动标注工具(详细步骤 + 源码)
查看>>
OpenCV与AI深度学习 | 水下检测+扩散模型:或成明年CVPR最大惊喜!
查看>>
OpenCV与AI深度学习 | 深度学习检测小目标常用方法
查看>>
OpenCV与AI深度学习 | 超越YOLOv10/11、RT-DETRv2/3!中科大D-FINE重新定义边界框回归任务
查看>>
OpenCV与AI深度学习 | 高效开源的OCR工具:Surya-OCR介绍与使用
查看>>
OpenCV与AI深度学习|16个含源码和数据集的计算机视觉实战项目(建议收藏!)
查看>>