#include <iostream> #include <complex> int main(){ using namespace std; complex<double> c1{3, 4}, c2{4.5}; const complex<double> c3{c2}; cout << "c1 = " << c1 << endl; cout << "c2 = " << c2 << endl; cout << "c3 = " << c3 << endl; cout << "c3.real = " << c3.real() << endl; cout << "c3.imag = " << c3.imag() << endl; cout << "c1 + c2 = " << c1 + c2 << endl; cout << "c1 - c2 = " << c1 - c2 << endl; cout << "abs(c1) = " << abs(c1) << endl; cout << boolalpha; cout << "c1 == c2 : " << (c1 == c2) << endl; cout << "c3 == c2 : " << (c3 == c2) << endl; complex<double> c4 = 2; cout << "c4 = " << c4 << endl; c4 += c1; cout << "c4 = " << c4 << endl; }
#include <iostream> #include <array> #include <string> template<typename T> void output1(const T &obj) { for(auto i: obj) std::cout << i << ", "; std::cout << "\b\b \n"; } template<typename T> void output2(const T &obj) { for(auto p = obj.cbegin(); p != obj.cend(); ++p) std::cout << *p << ", "; std::cout << "\b\b \n"; } int main() { using namespace std; array<int, 5> x1; cout << "x1.size() = " << x1.size() << endl; x1.fill(42); x1.at(0) = 999; x1.at(4) = -999; x1[1] = 777; cout << "x1: "; output1(x1); cout << "x1: "; output2(x1); array<double, 10> x2{1.5, 2.2}; cout << "x2.size() = " << x2.size() << endl; cout << "x2: "; output1(x2); array<int, 5> x3(x1); cout << boolalpha << (x1 == x3) << endl; x3.fill(22); cout << "x3: "; output1(x3); swap(x1, x3); cout << "x1: "; output1(x1); cout << "x3: "; output1(x3); }
#include "Employee.hpp" #include <iostream> void test() { using std::cout; using std::endl; cout << Employee::doc << endl << endl; Employee employee1; employee1.set_info("Sam", 30000, 2015, 1, 6); employee1.update_hire_date(2017, 6, 30); employee1.update_salary(35000); employee1.display_info(); cout << endl << endl; Employee employee2{ "Tony", 20000, 2020, 3, 16 }; employee2.raise_salary(15); employee2.display_info(); cout << endl << endl; Employee::display_count(); } int main() { test(); } #pragma once #pragma once #include <iostream> #include <string> #include <iomanip> using std::string; using std::cout; using std::endl; using std::setfill; using std::setw; using std::left; using std::right; using std::to_string; struct Date { int year; int month; int day; }; class Employee { public: Employee(); Employee(string name0, double salary0, int y, int m, int d = 1); void set_info(string name0, double salary0, int y, int m, int d = 1); string get_name() const; double get_salary() const; void display_info() const; void update_salary(double s); void update_hire_date(int y, int m, int d); void raise_salary(double by_percent); public: static void display_count(); private: string id; string name; double salary; Date hire_date; public: static const string doc; private: static int count; }; const string Employee::doc{ "a simple Employee class" }; int Employee::count = 0; Employee::Employee() : id{ to_string(count + 1) } { ++count; } Employee::Employee(string name0, double salary0, int y, int m, int d) : id{ to_string(count + 1) }, name{ name0 }, salary{ salary0 }, hire_date{ y, m, d } { ++count; } void Employee::set_info(string name0, double salary0, int y, int m, int d) { name = name0; salary = salary0; hire_date.year = y; hire_date.month = m; hire_date.day = d; } string Employee::get_name() const { return name; } double Employee::get_salary() const { return salary; } void Employee::display_info() const { cout << left << setw(15) << "id: " << id << endl; cout << setw(15) << "name: " << name << endl; cout << setw(15) << "salary: " << salary << endl; cout << setw(15) << "hire_date: " << hire_date.year << "-"; cout << std::right << setfill('0') << setw(2) << hire_date.month << "-" << setw(2) << hire_date.day; cout << setfill(' '); } void Employee::update_salary(double s) { salary = s; } void Employee::update_hire_date(int y, int m, int d) { hire_date.year = y; hire_date.month = m; hire_date.day = d; } void Employee::raise_salary(double by_percent) { double raise = salary * by_percent / 100; salary += raise; } void Employee::display_count() { cout << "there are " << count << " employees\n"; }
#include "Complex.h" #include <iostream> void test() { using namespace std; Complex c1(3, -4); const Complex c2(4.5); Complex c3(c1); cout << "c1 = "; c1.show(); cout << endl; cout << "c2 = "; c2.show(); cout << endl; cout << "c2.imag = " << c2.get_imag() << endl; cout << "c3 = "; c3.show(); cout << endl; cout << "abs(c1) = "; cout << abs(c1) << endl; cout << boolalpha; cout << "c1 == c3 : " << is_equal(c1, c3) << endl; cout << "c1 == c2 : " << is_equal(c1, c2) << endl; Complex c4; c4 = add(c1, c2); cout << "c4 = c1 + c2 = "; c4.show(); cout << endl; c1.add(c2); cout << "c1 += c2, " << "c1 = "; c1.show(); cout << endl; } int main() { test(); } #pragma once #include<iostream> #include<cmath> using namespace std; class Complex { public: Complex(float x = 0, float y = 0) { real = x; imag = y; } Complex(Complex& c1); int get_real()const { return real; } int get_imag()const { return imag; } friend Complex add(Complex& c1, const Complex& c2); friend bool is_equal(const Complex& c1, const Complex& c2); friend float abs(Complex& c1); void show()const; void add( const Complex& c1); private: float real, imag; }; Complex::Complex(Complex& c1) { real = c1.real; imag = c1.imag; } void Complex::show()const { if (imag == 0) cout << real; else if (imag < 0) cout << real << "-" << abs(imag) << "i"; else cout << real << "+" << imag << "i"; } void Complex::add(const Complex& c1) { real += c1.real; imag += c1.imag; } Complex add(Complex& c1,const Complex& c2) { Complex c3; c3.real = c1.real + c2.real; c3.imag = c1.imag + c2.imag; return c3; } bool is_equal(const Complex& c1,const Complex& c2) { if (c1.real == c2.real && c1.imag == c2.imag) return true; else return false; } float abs(Complex& c1) { return sqrt(c1.real * c1.real + c1.imag * c1.imag); }
#include "User.hpp" #include <iostream> void test() { using std::cout; using std::endl; cout << "testing 1......\n"; User user1("Jonny", "92197", "[email protected]"); user1.print_info(); cout << endl << "testing 2......\n\n"; User user2("Leonard"); user2.change_passwd(); user2.set_email(); user2.print_info(); cout << endl; User::print_n(); } int main() { test(); }
#pragma once #include<iostream> #include<string> #include<iomanip> using namespace std; class User { public: User(string name0, string passwd0 = "111111", string email0 = "") :name{ name0 }, password{ passwd0 }, email{ email0 } { count ++; } ~User() = default; void set_email(); void change_passwd(); void print_info(); static void print_n(); private: string name; string password; string email; static int count; }; int User::count = 0; void User::set_email() { cout << "Enter email address:"; cin >> email; cout << "email is set successfully..." << endl; } void User::change_passwd() { for (int i = 1; i <= 3; i++) { string password1; if (i == 1) cout << "Enter old password:"; cin >> password1; if (password1 == password) { cout << "Enter new password:"; cin >> password; cout << "new password is set successfully..." << endl; break; } else { if (i == 1 || i == 2) cout << "password input error.Please re-enter again:"; if(i==3) cout << "password input error.Please try after a while:" << endl; } } } void User::print_info() { cout <<left<<setw(10) << "name:" << name << endl; cout << setw(10) << "password:" ; for (int j = 0; j <password.length(); j++) cout << "*"; cout << endl; cout <<setw(10) << "email:" << email << endl; } void User::print_n() { cout << "there are" << count << "users."; }
标签:const,string,int,void,Complex,实验,cout From: https://www.cnblogs.com/hjr123/p/16785687.html