摘要:
Java 程序员习惯new,但C++不一样 一个最大的问题是,我看到每个来自托管语言比如Java或C#的人,他们会在C++中到处使用new关键字 但在C++中你不应该这样做,有2个原因。后面谈及。 简单来说就是因为性能的原因。在堆上分配要比在栈上分配花费更长的时间。 而且在堆上分配内存的话,那你必须 阅读全文
posted @ 2025-12-11 10:13
超轶绝尘
阅读(6)
评论(0)
推荐(0)
摘要:
注意事项 尽量用括号的形式去初始化成员变量,避免成员变量的被多次初始化 括号形式构造成员变量: 顺序需和成员变量定义顺序保持一致 #include<iostream> class Entity { public: int m_Score; std::string m_Name; //以属性名称 + 阅读全文
posted @ 2025-12-11 10:12
超轶绝尘
阅读(5)
评论(0)
推荐(0)
摘要:
一、const方法 二、指针常量 和常量指针 三、multable 修饰变量,使可以在常量方法中被修改 修饰lambada表达式, #include<iostream> // 标记, lambada表达式中,访问外部变量数据 void mutableLambadaFunction() { int x 阅读全文
posted @ 2025-12-11 10:10
超轶绝尘
阅读(8)
评论(0)
推荐(0)
摘要:
一、默认编码 ASCII ASCII可以拓展为很多,比如UTF-8、UTF-16、 UTF-32 还有宽字符(wide string) 当然,字符其实是可以大于一个字节的,在其他语言中(日语、中文)有两个、三个、四个字节的字符。 二、大小 1字节 byte, 就是8bit,= 2^8 = 256 种 阅读全文
posted @ 2025-12-11 10:10
超轶绝尘
阅读(8)
评论(0)
推荐(0)
摘要:
一、数组的创建 栈分配:int example[5]; 方法结束栈空间自动释放 堆分配:int* arr = new int[5]; 需要手动删除 #include<iostream> int main() { //1. 栈上分配数组空间,当前方法结束自动释放空间(栈空间内存有限),不必手动删除 i 阅读全文
posted @ 2025-12-11 09:54
超轶绝尘
阅读(8)
评论(0)
推荐(0)
摘要:
一、虚函数的意义 虚函数引入了一种动态分配的概念,一般通过虚表(vtable)来实现编译。虚表就是一个包含所有虚函数映射的列表。通过虚表,我们可以在运行时找到正确的被重写的函数。简单来说,如果你想重写一个函数,那么你必须要把基类中的原函数设置为虚函数,否则父类引用调用的方法则是父类自身的方法,而不是 阅读全文
posted @ 2025-12-11 09:36
超轶绝尘
阅读(5)
评论(0)
推荐(0)
摘要:
一、不写构造函数带来的问题 属性值未被初始化,是内存上的脏数据 创建对象语句,于编译期报错:Using uninitialized memory 不同于java,属性有默认值,C++属性的初始值需要程序员手动指定 #include<iostream> class Entity { public: i 阅读全文
posted @ 2025-12-11 09:35
超轶绝尘
阅读(4)
评论(0)
推荐(0)
摘要:
一、java枚举 import org.junit.Test; enum EnumA { A, B, C; } public class TestEnum { @Test public void testEnum() { System.out.println(EnumA.A); //A System 阅读全文
posted @ 2025-12-11 09:12
超轶绝尘
阅读(10)
评论(0)
推荐(0)
摘要:
一、类内static 和 类外(全局)static class 和 struct 内 (此类或此struct的所有实例公共可见) class 和 struct 外 (只在当前编译单元可见 xxx.obj) (1)Main.cpp #include<iostream> int s_Variable = 阅读全文
posted @ 2025-12-11 09:10
超轶绝尘
阅读(6)
评论(0)
推荐(0)

浙公网安备 33010602011771号