![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
theThreeDay
这个作者很懒,什么都没留下…
展开
-
Qt语言家
QT语言家原创 2022-12-13 19:36:16 · 164 阅读 · 0 评论 -
QString常用函数
#include <QCoreApplication>#include <QDebug>int main(int argc, char *argv[]){ QCoreApplication a(argc, argv); //Qstring字符串的拼接 QString s = "我的女神"; s = s + "刘亦菲"; s += "最近怎么样?"; s.append("在什么地方?"); qDebug() <<原创 2022-03-02 16:36:21 · 473 阅读 · 0 评论 -
算数溢出解决
算术溢出: 使用 4 字节值上的运算符 * ,然后将结果转换到 8 字节值。在调用运算符 - 之前将值强制转换为宽类型可避免溢出(io.2)。把int换成double类型原创 2021-09-21 11:54:00 · 8578 阅读 · 1 评论 -
C/C++测试程序运行时常
clock()是以毫秒为单位,要正确输出时间差需要把它换成秒,因此需要除以CLK_TCK。clock()函数计算出来的是硬件滴答的数目,不是毫秒。在TC2.0中硬件每18.2个滴答是一秒,在VC++6.0中硬件每1000个滴答是一秒。...原创 2021-09-21 10:07:53 · 67 阅读 · 0 评论 -
cin深入理解
最近被cin搞烦了,来深入学习一波,这里直接转载大佬的传送门转载 2021-04-14 00:04:06 · 96 阅读 · 0 评论 -
纯虚函数与抽象类
什么时候使用纯虚函数某些类无法具体实现,就定义为纯虚函数某些类,在现实角度和项目实现角度,都不需要实例化(不需要创建它的对象),这个类中定义的某些成员函数,只是为了提供一个形式上的接口,准备让子类来做具体的实现。此时,这个方法,就可以定义为“纯虚函数”, 包含纯虚函数的类,就称为抽象类。纯虚函数的用法使用virtual 和 = 0抽象类不允许创建对象,抽象类设计的目的是派生出新的子类#include <iostream>#include <string>usi原创 2021-03-25 22:49:19 · 119 阅读 · 0 评论 -
消失的析构函数
一篇和正常的测试函数献上,并附上结果截图可以看到最后#include <iostream>using namespace std;class Father {public: Father(const char* addr = "中国") { cout << "执行了father的构造函数" << endl; int len = strlen(addr) + 1; this->addr = new char[len]; strcpy_s原创 2021-03-25 20:47:40 · 86 阅读 · 0 评论 -
多态
实现多态—虚函数多态的本质:形式上,使用统一的父类指针做一般性处理.但实际执行时,这个指针可能指向子类对象形式上,原本调用父类的方法,但是实际上会调用子类的同名方法.[注意]程序执行时,父类指针指向父类对象,或子类对象时,在形式上时无法分辨的只有通过多态机制,才能执行真正对应的方法基础:虚函数的使用虚函数的定义:在函数的返回类型之前使用 virtual只在成员函数的声明中添加virtual , 不要再实现中添加 virtual虚函数的继承:如果某个成员函数被声明为虚函数,那么它的子原创 2021-03-23 19:53:16 · 65 阅读 · 0 评论 -
项目练习----运算符重载的练习
Monster.h#pragma once#include <string>#include <iostream>class SpriteStone;//妖兽类class Monster{public: Monster(int level = 1, const std::string& category = "未知"); SpriteStone getValue(); //妖兽价值,返回灵石 friend std::ostream& ope原创 2021-03-19 17:59:56 · 141 阅读 · 0 评论 -
类型转换
普通类型转换实现 a = 1000;自动转换为类成员 salary = 1000a = “lemn”; 自动转换成类成员 name = “lemn”以类型转换得角度来看构造函数 Boy(int age); Boy(const char* name);Boy::Boy(int age) { const char* defaultName = "未命名"; //先定义一个新变量存储未命名这个值,因为原先定义的name是const类型 name = new char[strlen(defaul原创 2021-03-13 21:38:09 · 94 阅读 · 1 评论 -
输入输出运算符重载
重载 >> <<为了更方便实现复杂对象的输入输出使用成员函数只贴出关键代码,多余的就不贴了.//输出运算符重载---成员函数 ostream& operator<<(ostream &os);ostream& Boy::operator<<(ostream& os){ //os 相当于cout os << "ID:" << id << "\t姓名:" <<原创 2021-03-10 20:37:40 · 161 阅读 · 0 评论 -
下标运算符重载
Boy.h#pragma once#include <string>#define AGE "age"#define SALARY "salary"#define DARKHORSE "darkHorse"#define POWER "power"class Boy{public: Boy(const char* name = NULL, int age = 0, int salary = 0, int darkHouse = 0); ~Boy(); std::stri原创 2021-03-09 20:57:34 · 356 阅读 · 2 评论 -
关系运算符的重载 > < ==
Boy.h#pragma once#include <string>class Boy{public: Boy(const char* name = NULL, int age = 0, int salary = 0, int darkHouse = 0); ~Boy(); std::string description(); //重载赋值运算符 Boy& operator=(Boy& boy); //关系运算符重载 bool operator>转载 2021-03-09 19:44:48 · 236 阅读 · 0 评论 -
赋值运算符的重载 =
Boy.h#pragma once#include <string>class Boy{public: Boy(const char* name = NULL, int age = 0, int salary = 0, int darkHouse = 0); ~Boy(); std::string description(); //重载赋值运算符 Boy& operator=(Boy& boy);private: char* name; int ag原创 2021-03-08 23:12:11 · 110 阅读 · 2 评论 -
使用成员函数和非成员函数实现运算符重载的区别
区别1.使用成员函数来实现运算符重载时,少写一个参数,因为第一个参数就是this指针成员函数:非成员函数:俩种方式的选择1.一般情况下,单目运算符重载,使用成员函数重载更方便2,一般情况下,双目运算符重载,使用友元函数更直观方便实现 a+b // a.operator+(b)和 b+a //b.operator+(a)相同效果,成员函数无法实现特殊情况= () [] -> 不能重载位友元函数!!!(否则可能和c++其他规则冲突),只能使用成员函数形式进行重载原创 2021-03-08 21:05:59 · 631 阅读 · 0 评论 -
使用非成员函数实现运算符重载
1原创 2021-03-08 20:40:59 · 668 阅读 · 0 评论 -
使用成员函数实现运算符重载
1原创 2021-02-05 19:22:33 · 569 阅读 · 0 评论 -
友元类
友元类和友元函数相似,就是把多个功能写成一个类,然后再声明成友元类也很简单,就是写一个类,然后再另一个类里声明成友元类friend class computerServe;#include <iostream>#include <string>#include <sstream>//友元类//设一个维护计算机的类class computer;class computerServe {public: void upgrade(computer*原创 2021-02-02 14:54:10 · 571 阅读 · 0 评论 -
友元函数
为什么要使用友元函数当类想要实现一个功能,而他本身又完成不了的时候,需要借助外力来完成,这时候设置一个友元函数来完成.友元函数拥有类的一切权限,提高了执行效率友元函数的俩种使用方式友元函数,友元类使用全局函数作为友元函数这里设计了一个CPU升级的函数,因为电脑本身是无法自己给自己升级的,所以就要借助外力,当然也可以定义接口写这里的实现友元函数也很简单,只要把声明放入类里就行,public和private都一样#include <iostream>#include <stri原创 2021-02-02 10:58:19 · 481 阅读 · 0 评论