day44 1228

2023-12-29 16:20
文章标签 1228 day44

本文主要是介绍day44 1228,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

作业1:

#include <iostream>using namespace std;class Person
{int *age;string &name;
public:Person(int age,string &name):age(new int(age)),name(name){cout << "Person的构造函数" <<endl;}~Person(){delete age;cout << "Person的析构函数" << endl;}Person(Person &other):age(new int(*(other.age))),name(other.name){cout << "Person的拷贝构造函数" << endl;}Person &operator = (Person &other){*(this->age) = *(other.age);this->name = other.name;cout << "Person的拷贝赋值函数" << endl;return *this;}void show();
};class Stu
{double *score;Person p1;
public:Stu(double score,Person p):score(new double(score)),p1(p){cout << "Stu的构造函数" << endl;}~Stu(){delete score;cout << "Stu的析构函数" << endl;}Stu(Stu &other):score(new double(*(other.score))),p1(other.p1){cout << "Stu的拷贝构造函数" <<endl;}Stu &operator = (Stu &other){*(this->score) = *(other.score);this->p1 = other.p1;cout << "Stu的拷贝赋值函数" << endl;return *this;}void show(string);
};void Person::show()
{cout << "age = " << age << endl;cout << "*age = " << *age << endl;cout << "name = " << name << endl;cout << "&name = " << &name << endl;
}void Stu::show(string remind)
{cout << "-----------" << remind <<"------------" << endl;cout << "score = " << score <<endl;cout << "*score = " << *score << endl;cout << "&p1 = " << &p1<<endl;p1.show();cout << "-------------------------" << endl;
}int main()
{string name1 = "张三";Person p1(18,name1);Stu s1(99.9,p1);s1.show("s1");Stu s2(s1);s2.show("s2");string name2 = "李四";Person p2(19,name2);Stu s3(88.8,p2);s2 = s1;s2.show("s2");s3.show("s3");return 0;
}

现象:

思维导图

 

这篇关于day44 1228的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/549985

相关文章

【Tsinsen】1228 飞飞侠【并查集优化最短路】

题目链接:A1228. 飞飞侠 #include <bits/stdc++.h>using namespace std ;typedef long long LL ;#define clr( a , x ) memset ( a , x , sizeof a )const int MAXN = 155 ;const LL INF = 1e18 ;struct Node {LL dis ;in

day44.动态规划

718.最长重复子数组 给两个整数数组 nums1 和 nums2 ,返回 两个数组中 公共的 、长度最长的子数组的长度 。  思路:1.确定dp数组(dp table)以及下标的含义: dp[i][j] :以下标i - 1为结尾的A,和以下标j - 1为结尾的B,最长重复子数组长度为dp[i][j]。 之后,就和最长子序列很相似了,这个最长重复子数组是用双层for循环,为啥不能从0开

day44——面向对象特征

一、封装 1.1 面向对象的三大特质 封装、继承、多态,如果问有四大特征,可以外加一个抽象 封装:将实现同一事物的所有的属性(成员变量)和行为(成员函数)封装到一个整体,我们称之为类(class)。类对外部信息有一个屏障作用。 1.2 C++中的类(class) C++中的类,是由C++中的结构体演化而来的,只需要将struct改成关键字class,就定义了一个类 C++中类和结构体的

代码随想录训练营day44|动态规划part11

最长公共子序列 力扣题目链接 class Solution {public:int longestCommonSubsequence(string text1, string text2) {int len1 = text1.length();int len2 = text2.length();vector<vector<int>> dp(len1+1, vector<int>(len2+1

学习大数据DAY44 帆软 report 配置

目录 Linux 系统独立部署 Tomcat 服务器设置 上机练习 Linux 系统独立部署 ## 题目要求 在 LINUX 系统, Tomcat 服务器容器下,完成 FineReport 报表工程的独立部 署,并设置服务器开机自启动,并请实操演示 得分点(完成得满分,未完成得 0 分): FineReport 报表工程的独立部署

代码随想录算法训练营Day44|322.零钱兑换、279.完全平方数、139.单词拆分

零钱兑换 322. 零钱兑换 - 力扣(LeetCode) 本题是完全背包问题 dp数组表示组成amount金额所需的最少硬币个数。 考虑dp数组的推导公式,由于是计算最少硬币的个数,所以需要考虑dp[i-coins[j]+1和dp[i]的较小值。所以dp[i] = min(dp[i-coins[j]]+1,dp[i]),其中i为遍历过程中的amout值,coins[j]为硬币的面值。

【代码随想录算法训练Day44】LeetCode 322.零钱兑换、LeetCode 279.完全平方数、LeetCode139.单词拆分

Day44 动态规划第六天 LeetCode 322.零钱兑换 dp数组的含义:装满容量为j的背包需要的最少物品数为dp[j] 递推公式:dp[j]=min(dp[j-coins[i]]+1,dp[j]) 初始化:dp[0]=0,dp[j]=INT_MAX 遍历顺序:个数问题与遍历顺序无关,都可以 class Solution {public:int coinChange(vector<i

算法题day44(补5.30日卡:动态规划04)

一、刷题:今天继续学习动态规划01背包问题: 1.leetcode题目 1049. 最后一块石头的重量 II - 力扣(LeetCode)(medium) 解决: class Solution:def lastStoneWeightII(self, stones: List[int]) -> int:target = sum(stones)//2dp = [0]*(target + 1)fo

HDU 1228 A + B 字符串水题

HDU 1228 A + B 字符串水题 总之就是很水。。。。 #include <stdio.h>#include <string.h>char num[55][55];int sum;int len[2];int n;int a;int t;int shu[2][55];int main(){while (1){a = 0;t = 0;sum = 0;mems

Day44 动态规划part04

背包问题 01背包问题:每件物品只能用一次完全背包问题:每件物品可以使用无数次 01背包问题 暴力解法:每一件物品其实只有两个状态,取或者不取,所以可以使用回溯法搜索出所有的情况,那么时间复杂度就是 o ( 2 n ) o(2^n) o(2n),这里的n表示物品数量。动态规划:dp[i][j] 表示从下标为[0-i]的物品里任意取,放进容量为j的背包,价值总和最大是多少。对于物品i: 不放物