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

你可能感兴趣的文章
PyQt QML Material Design 按钮背景不会改变
查看>>
PyQt QString转成python stirng
查看>>
PyQt QToolButton在焦点时不更新图标
查看>>
PyQt 正确使用 emit() 和 pyqtSignal()
查看>>
PyQT-将文件复制到剪贴板
查看>>
PYQT.如何在QTableView中插入小部件
查看>>
PyQt4 代码在 PyQt5 (QHeaderView) 上不起作用
查看>>
PyQt4 到 PyQt5 ->mainFrame() 已弃用,需要修复才能加载网页
查看>>
PyQt4, class:mouseButtons用法
查看>>
PyQt4参考文档
查看>>
PyTorch Lightning:通过分布式训练扩展深度学习工作流
查看>>
PyQt5 - QThread:在线程仍在运行时被销毁
查看>>
PyQt5 - 如何从工作线程发出信号以通过 GUI 线程调用事件
查看>>
PyQt5 Designer 不工作:此应用程序无法启动,因为无法初始化 Qt 平台插件
查看>>
PyQt5 QLCNumber 没有更新
查看>>
PyQt5 TabWidget选项卡BarClicked TypeError:本机Qt信号不可调用
查看>>
PyQt5 从 PyQt4 转换信号代码
查看>>
PyQt5 和 asyncio:从永不完成的收益
查看>>
PyQt5 和 Django:如何使用 HTTP 请求(Multipart-form)上传图像?
查看>>
PyQt5 按钮运行功能和更新 LCD
查看>>