首页 > 其他分享 >实验1 类和对象(1)

实验1 类和对象(1)

时间:2022-09-29 22:37:10浏览次数:43  
标签:const cout v1 对象 Clock int 实验 include

#include <iostream> 
#include <string> 
#include <vector>
int main()
{
    using namespace std;
    string s1;
    string s2{"c plus plus"};
    string s3{s2};
    string s4=s2;
    s1="oop";
    vector<string> v1;
    v1.push_back(s1);  
    v1.push_back(s2 + "1"); 
    v1.push_back(s3 + "2"); 
    v1.push_back(s4 + "3");
    cout << "output1: " << endl; 
    for(auto item: v1) 
       cout << item << endl;
       cout << "ouput2: "; 
    for(auto p = v1.begin(); p != v1.end(); ++p) 
       cout << *p << endl;
       cout << "output3: " << endl; 
    for(auto i = 0; i < v1.size(); 
       ++i) cout << v1[i] << endl;
       vector<string> v2{v1.rbegin(), v1.rend()};
       cout << "v2: " << endl; 
       for(auto item: v2) 
       cout << item << endl;
 } 

#include <iostream> 
#include <string> 
#include <vector> 
#include <cmath> 
#include <cstdlib> 
#include <time.h>
template<typename T> 
void output(const T& obj)
{
    for(auto item: obj) 
       std::cout << item << " "; 
    std::cout << std::endl;
}
int main()
{
    using namespace std; 
    vector<int> v1{1, 9, 8, 4};
    v1.insert(v1.begin(), 2022);
    v1.insert(v1.end(), 2023);
    cout << "v1: "; 
    output(v1);
    v1.pop_back();
    v1.erase(v1.begin());
    cout << "v1: "; 
    output(v1);
    vector<string> v2{"《1984》", "《动物农场》", "《美丽新世界》"}; 
    cout << "v2: "; 
    output(v2);
 } 

#include <iostream> 
using std::cout; 
using std::endl;
class Point
{
public: 
    Point(int x0 = 0, int y0 = 0); 
    Point(const Point&p ); 
    ~Point() = default;
    int get_x() const { return x; }
    int get_y() const { return y; }
    void show() const;
private: 
    int x, y; 
};
Point::Point(int x0, int y0): x{x0}, y{y0}
{
    cout << "constructor called." << endl;
}
Point::Point(const Point& p): x{p.x}, y{p.y}
{
    cout << "copy constructor called." << endl;
}
void Point::show() const
{
    cout << "(" << x << ", "
                << y << ")" << endl;
}
int main()
{
    Point p1(4, 5);
    p1.show();
    Point p2 = p1;
    p2.show();
    Point p3{p2};
    p3.show();
    cout << p3.get_x() << endl;
 } 

#include <iostream> 
#include <iomanip> 
using std::cout; 
using std::endl;
class Clock
{
public:
    Clock(int h = 0, int m = 0, int s = 0);
    Clock(const Clock& t);
    ~Clock() = default;
    void set_time(int h, int m = 0, int s = 0);
    void show_time() const;
private:
    int hour, minute, second;
};
Clock::Clock(int h, int m, int s): hour{h}, minute{m}, second{s}
{
    cout << "constructor called" << endl;
}
Clock::Clock(const Clock& t): hour{t.hour}, minute{t.minute},
second{t.second} {
    cout << "copy constructor called" << endl;
}
void Clock::set_time(int h, int m, int s) 
{
    hour = h; 
    minute = m; 
    second = s;
}
void Clock::show_time() const
{
    using std::setw; 
    using std::setfill;
    cout << setfill('0') << setw(2) << hour << ":" << setw(2) << minute << ":" << setw(2) << second << endl;
}
Clock reset()
{
    return Clock(0, 0, 0);
}
int main()
{
    Clock c1(12, 0, 5);
    c1.show_time();
    c1 = reset();
    c1.show_time();
    Clock c2(c1);
    c2.set_time(6); 
    c2.show_time();
}

#include <iostream>
class X
{
public:
    X();
    ~X();
    X(int m);
    X(const X& obj);
    X(X&& obj) noexcept;
    void show() const;
private:
    int data;
}; 
 X::X(): data{42}
 {
     std::cout << "default constructor called.\n";
 }
 X::~X()
 {
     std::cout << "destructor called.\n";
 }
 X::X(int m): data{m}
 {
     std::cout << "constructor called.\n";
 }
 X::X(const X& obj): data{obj.data}
 {
     std::cout << "copy constructor called.\n";
 }
 X::X(X&& obj) noexcept: data{obj.data}
 {
     std::cout << "move constructor called.\n";
 }
 void X::show() const
 {
     std::cout << data << std::endl;
 }
 int main()
 {
     X x1;
     x1.show();
    X x2{2049};
    x2.show();
    X x3{x1};
    x3.show();
    X x4{ std::move(x2) };
    x4.show();
}
 
 

 

标签:const,cout,v1,对象,Clock,int,实验,include
From: https://www.cnblogs.com/shun16/p/16743320.html

相关文章

  • 实验1 类和对象(1)
    实验任务2#include<iostream>usingstd::cout;usingstd::endl;classPoint{public:Point(intx0=0,inty0=0);Point(constPoint&p);~Point()=default......
  • Python第五章实验报告
    一、实验题目Python第五章实例和实战作业二、实验目的和要求1.熟悉Pycharm的运行环境2.学习并掌握Python的字符串及正则表达式三、主要仪器设备联想小新air15硬件:AM......
  • 关于对象存储服务OBS,你真的了解么?
    自2015年提出“互联网+”以来,互联网信息技术对于企业发展的帮助作用越来越大,众多企业通过借助网络信息技术实现利润增值,企业对于网络信息数据也越来越依赖。但网络信息数......
  • js中返回对象键名的方法
    一、通过forin循环方法letobj={a:1,b:2,c:3}letkey=null;for(keyinobj){console.log(key);//分别输出abc}二、通过Object.keysconstobj={a:1......
  • 实验一 类和对象(1)
    任务2://Point类//相较于教材,在构造函数的写法上,采用了业界更通用的初始化列表方式#include<iostream>usingstd::cout;usingstd::endl;//定义Point类classPoi......
  • 实验1
    #include<iostream>usingstd::cout;usingstd::endl;classPoint{public:Point(intx0=0,inty0=0);Point(constPoint&p);~Poin......
  • C#中对象与JSON字符串互相转换的三种方式
    JSON(JavaScriptObjectNotation,JS对象标记)是一种轻量级的数据交换格式。关于内存对象和JSON字符串的相互转换,在实际项目中应比较广泛,经过一番搜索,找到如下三种方法......
  • oracle查询某用户授予出去以及被授予的对象权限
    文档课题:oracle查询某用户授予出去以及被授予的对象权限.>showuserUseris"LEO">createtabletestasselect*fromall_objects;Tablecreated.>selectcount(*)fr......
  • 实验一
    #include<iostream>usingstd::cout;usingstd::endl;usingnamespacestd;classPoint{public:Point(intx0=0,inty0=0);Point(constPoint&p);......
  • FormData对象的使用方法
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"conten......