当前位置: 首页 > news >正文

有个做图片mv的网站56厦门网络公司网站

有个做图片mv的网站56,厦门网络公司网站,第一营销网,桂林设计单位资质升级网站1. 什么是类(Class) 类是 C 的核心特性,用来描述具有相同属性和行为的一组对象。类是“模板”,对象是“实例”。 class 类名 {// 成员变量(属性)// 成员函数(行为) };2. 类的定义与使…

1. 什么是类(Class)

类是 C++ 的核心特性,用来描述具有相同属性和行为的一组对象。类是“模板”,对象是“实例”。

class 类名 {// 成员变量(属性)// 成员函数(行为)
};

2. 类的定义与使用

📌 定义一个类

class Person {
public:std::string name;int age;void sayHello() {std::cout << "Hello, I am " << name << std::endl;}
};

📌 使用类创建对象

int main() {Person p;p.name = "Tom";p.age = 20;p.sayHello();  // 输出:Hello, I am Tomreturn 0;
}

3. 访问控制关键字

关键字说明
public公有,任何地方都能访问
private私有,仅类内部可访问
protected受保护,继承时相关
class Test {
public:int x;         // 公有成员
private:int y;         // 私有成员
};

4. 构造函数与析构函数

🔹 构造函数:创建对象时自动调用

同类名,可重载无返回值

🔹 析构函数:对象销毁时自动调用

函数名前加 ~不能重载无参数

class Animal {
public:Animal() { std::cout << "构造函数执行\n"; }~Animal() { std::cout << "析构函数执行\n"; }
};

5. this 指针

  • 指向调用成员函数的当前对象
  • 常用于成员赋值、链式调用
class Box {int width;
public:Box(int width) {this->width = width;}
};

6. 成员函数在类外定义(使用作用域符号 ::

class Car {
public:void start();
};void Car::start() {std::cout << "Car started" << std::endl;
}

7. 成员初始化列表

构造函数中推荐用初始化列表设置成员变量(尤其是const或引用)。

class Point {int x, y;
public:Point(int a, int b) : x(a), y(b) {}
};

8. 静态成员变量与函数(static)

  • 所有对象共享一个变量
  • 静态函数只能访问静态成员
class Counter {
public:static int count;Counter() { count++; }static void printCount() {std::cout << "Count = " << count << std::endl;}
};
int Counter::count = 0;  // 静态变量初始化

9. 对象的组合(类中包含类)

class Engine {
public:void run() { std::cout << "Engine running\n"; }
};class Car {Engine e;
public:void drive() {e.run();std::cout << "Car driving\n";}
};

10. 类的继承(Inheritance)

子类继承父类的属性和方法。

class Animal {
public:void eat() { std::cout << "Eating\n"; }
};class Dog : public Animal {
public:void bark() { std::cout << "Barking\n"; }
};

📝 注意继承方式:

继承方式公有成员保护成员私有成员
public保持原样保持保护不可访问
protected变保护保持保护不可访问
private变私有变私有不可访问

11. 多态(Polymorphism)

🔹 虚函数实现运行时多态:

class Base {
public:virtual void speak() {std::cout << "Base speak\n";}
};class Child : public Base {
public:void speak() override {std::cout << "Child speak\n";}
};

🔹 使用指针调用

Base* b = new Child();
b->speak();  // 输出 Child speak(虚函数决定调用子类)

12. const 成员函数

在函数声明末尾加 const 表示函数不会修改成员变量。

class Student {int id;
public:int getId() const {return id;  // 不能修改成员变量}
};

13. 内联函数(inline)

小函数可加 inline 提高效率(建议只用于简单函数)。

class Math {
public:inline int square(int x) {return x * x;}
};

14. 类的分离式编写(.h + .cpp)

📁 Person.h

#pragma once
class Person {
public:Person(const char* n);void sayHello();
private:const char* name;
};

📁 Person.cpp

#include "Person.h"
#include <iostream>Person::Person(const char* n) : name(n) {}
void Person::sayHello() {std::cout << "Hello, I am " << name << std::endl;
}

📁 main.cpp

#include "Person.h"
int main() {Person p("Alice");p.sayHello();return 0;
}

15. 总结:C++ 类编写常见套路

✅ 成员变量私有化,公有函数访问
✅ 构造+析构函数成对定义
✅ 使用初始化列表设置成员变量
✅ 建议将类定义分离为 .h.cpp
✅ 使用 const、inline、static 提高安全性与效率
✅ 利用继承和虚函数实现代码复用与多态

http://www.dtcms.com/a/407830.html

相关文章:

  • PaperReading:《Manipulating Multimodal Agents via Cross-Modal Prompt Injection》
  • Unity模拟《切尔诺贝利》中的控制棒
  • 创新型的网站建设域名查询ip地址
  • 离散时间信号和系统的频域分析
  • 门户网站技术方案wordpress 滑到底部自动加载
  • 公司网站百度搜不到寻找外贸客户的网站
  • 电子商务网站开发怎么设计做漫画视频在线观看网站
  • 手表大全网站广告网站模板免费下载
  • 网站布局分类汽车手机网站制作
  • Spring的AOP
  • PyQt简单做一个GUI
  • Transformer 全景解析:从原理到实践的进阶指南
  • 秦皇岛公司做网站中国工商注册网官网网址
  • 阿里云万网网站个体工商户年检入口
  • 网站逻辑结构政务服务 网站 建设方案
  • NeurIPS 2025 | 时序方向硬核总结,又一顶会新方向!
  • CTF攻防世界WEB精选基础入门:get_post
  • 学校如何报销网站开发费用面馆装修设计
  • 游戏网站后台建设wordpress 登录框
  • 2025年--Lc161 --H80.删除有序数组中的重复项 II(数组和字符串)--Java版
  • datawhale RAG技术全栈指南 202509 第3次作业
  • 网站建设软件做淘宝一样的网站
  • 网页前端模板网站家里装修
  • 怎么避免网站开发后门上海怎么建设网站
  • 牛客算法题_查找
  • 数据结构算法学习:LeetCode热题100-子串篇(和为 K 的子数组、滑动窗口最大值、最小覆盖子串)
  • 投资网站模板太原做网站哪家好
  • 营销网站开发isuos常州seo外包
  • 网站的基础建设项目网站平台建设的作用
  • 【EE初阶 - 网络原理】Socket 套接字