首页 > 其他分享 >实验1 C语言开发环境使用和数据类型、运算符、表达式

实验1 C语言开发环境使用和数据类型、运算符、表达式

时间:2022-09-28 17:36:57浏览次数:51  
标签:string Point int s2 数据类型 C语言 运算符 v1 xx

#include <iostream>
#include <string>
#include <vector>
int main()
{
  using namespace std;
  string s1; // 创建一个string对象
  string s2{"c plus plus"}; // 创建一个string对象,并初始化
  string s3{s2}; // 创建一个string对象,并用s2对其进行初始化
  string s4 = s2; // 创建一个string对象,并用s2对其进行初始化
  s1 = "oop";
  vector<string> v1; // 创建一个vector对象
  v1.push_back(s1); // 向v1末尾添加数据项s1
  v1.push_back(s2 + "1");
  v1.push_back(s3 + "2");
  v1.push_back(s4 + "3");
  // 输出方式1:使用自动类型推导、范围for
  cout << "output1: " << endl;
  for(auto item: v1)
  cout << item << endl;
  // 输出方式2:使用自动类型推导、迭代器
  cout << "ouput2: ";
  for(auto p = v1.begin(); p != v1.end(); ++p)
  cout << *p << endl;
  // 输出方式3:使用自动类型推导、索引
  cout << "output3: " << endl;
  for(auto i = 0; i < v1.size(); ++i)
  cout << v1[i] << endl;
  vector<string> v2{v1.rbegin(), v1.rend()}; ?// 使用vector对象v1极其迭代器构造对象,
  cout << "v2: " << endl;
  for(auto item: v2)
  cout << item << endl;
}
#include <iostream>
using std::cout;
using std::endl;
// 定义Point类
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::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 <string> #include <vector> int main() {   using namespace std;   string s1;      // 创建一个string对象   string s2{"c plus plus"};  // 创建一个string对象,并初始化   string s3{s2};    // 创建一个string对象,并用s2对其进行初始化   string s4 = s2;   // 创建一个string对象,并用s2对其进行初始化   s1 = "oop"; 1 2 3 4 5 6 7 8 9 10 11 12 13  测试结果: 说明: 1. xx.size() 是容器类对象的方法,返回容器数据项个数。 2. xx.begin() , xx.end() , xx.rbegin() , xx.rend() 是序列类容器(container)对象的迭代器 (iterator)接口。某种程度上,是比指针更高层的抽象。 xx.begin() 指向容器内的第一个数据项, xx.end() 指向容器内最后一个数据项后面的位置; xx.rbegin() 指向容器内的最后一个数据项, xx.rend() 指向容器内第一个数据项前面的位置; 迭代器指示的是位置,通过迭代器访问数据项要通过星号运算,即代码中的line30 *itetator 这样的方 式。     vector<string> v1;   // 创建一个vector对象   v1.push_back(s1);    // 向v1末尾添加数据项s1   v1.push_back(s2 + "1");   v1.push_back(s3 + "2");   v1.push_back(s4 + "3");   // 输出方式1:使用自动类型推导、范围for   cout << "output1: " << endl;   for(auto item: v1)     cout << item << endl;     // 输出方式2:使用自动类型推导、迭代器   cout << "ouput2: ";   for(auto p = v1.begin(); p != v1.end(); ++p)     cout << *p << endl;     // 输出方式3:使用自动类型推导、索引   cout << "output3: " << endl;   for(auto i = 0; i < v1.size(); ++i)     cout << v1[i] << endl;   vector<string> v2{v1.rbegin(), v1.rend()};  // 使用vector对象v1极其迭代器, 构造对象v2   cout << "v2: " << endl;   for(auto item: v2)     cout << item << endl;
}

 

标签:string,Point,int,s2,数据类型,C语言,运算符,v1,xx
From: https://www.cnblogs.com/yzhag/p/16738860.html

相关文章

  • python 内置数据类型与方法
    序列类型包括列表、元组和范围(range)以及字符串,序列类型的对象有一些共同的操作,如操作符运算、切片操作等。1.list类型与操作1.1玩转索引列表(list)类型的对象可以通过li......
  • c++基本数据类型
    #include<iostream>#include<typeinfo>usingnamespacestd;intmain(){ inti; //定义一个整型变量 cout<<"输入一个整数i:"; cin>>i; cout<<"输出刚才......
  • C语言标准字符串分割
               std::stringheroIDAndLeve=tdx["id"].asString();heroIDAndLeve="msefd111ds,12";constchar*expr=heroIDAndLeve.c_str();......
  • Redis五种数据类型底层实现
    Redis数据库结构Redis是支持多key-value数据库(表)的,并用RedisDb来表示一个key-value数据库(表).redisServer中有一个redisDb*db成员变量,RedisServer在初始化......
  • 4、linux环境下,使用VCS进行Verilog和C语言联编译
    `timescale1ns/1nsmoduletest;initialbegin$hello;//#10$stop;#10$finish;endendmodule/********************************************......
  • C语言:全局变量与局部变量
    #include<stdio.h>intd=1;fun(intq){intd=5;d+=q++;printf("%d",d);}main(){inta=3;fun(a);d+=a++;printf("%d\n",d);......
  • 基本数据类型自动转换
    精度小的类型自动转换为精度大的数据类型,自动类型转换char--int--long--float--doublebyte--short--int--long--float--double 自动转换注意和细节1、有多种类型的混......
  • 如何将编写的c语言程序打包成exe可执行文件呢?
    如何将编写的c语言程序打包成exe可执行文件呢?以前我们写程序很多是在编辑器上,让编辑起来编译运行我们的程序。如果想将其打包成exe可执行文件该如何做?我这里推荐使用code......
  • 基2时间抽取FFT算法推导,及C语言实现
    https://blog.csdn.net/qq_38677310/article/details/99663883 https://wenku.baidu.com/view/af198ef01a5f312b3169a45177232f60ddcce77d.html......
  • C语言每日一题——第一天
    第一天小明想要给他的朋友写一个生日祝福程序,在运行时,会根据输入的日期输出不同的结果。若在平时运行程序(例如9月28日):09-28:+3?-15而在朋友生日(12月13日)当天:12-13......