美文网首页
DongqianxiaoC++ day01

DongqianxiaoC++ day01

作者: __method__ | 来源:发表于2021-05-30 18:32 被阅读0次

std::cout 与 cout 有什么区别

std是一个命名空间(namespace),‘::’是作用域运算符,cout是std空间中的一个函数名。使用cout时,必须有使用std命名空间的说明,有两种说明方式。
方式一:每次使用时对cout说明:

std::cout << "Input two numbers:";

方式二:在主函数前说明一下,后面就可以直接使用cout:

using namespace std;
cout << "Input two numbers:";

下面两段代码功能完全一样:

代码一:

#include <iostream>
 
int main()
{
     std::cout << "Hello world!!!" << std::endl;
     return 0;
}

代码二:

#include<iostream>
 
using namespace std;
 
int main()
{ 
    cout << "Hello world!!!" << endl;
    return 0;
}

输入

#include <iostream>

int main() {
    int number1;
    std::cin >> number1;
    std::cout << "number1 = " <<number1 << std::endl;

    return 0;
}

全局声明 cout、cin、endl

这样下面不用写std::

#include <iostream>
using std::cout;
using std::cin;
using std::endl;
int main() {
    int number1;
    cin >> number1;
    cin >> number1;
    cin >> number1;
    cout << "number1 = " <<number1 << endl;
    // + - * / % 取余
    return 0;
}

类与对象

类是对象的模板, 对象是类的实例
类通常需要实例化出具体对象才能使用

#include <iostream>
using namespace std;
// 类名最好用大驼峰
class GradeBook{
public:
    void displayMessage(){
        // 方法名用小驼峰
        cout<<"Welcome to grade book"<<endl;
    }
};
int main() {
    // 实例化类
    // 类名 对象名
    GradeBook gradeBook;
    gradeBook.displayMessage();  //对象名.方法(函数)名调用
}

带有形参的方法

#include <iostream>
#include <cstring>
using namespace std;
// 类名最好用大驼峰
class GradeBook{
public:
    void displayMessage(string courseName ){
        // 方法名用小驼峰
        cout<<"Welcome to grade book "<< courseName<<endl;
    }
};
int main() {
    // 实例化类
    // 类名 对象名
    GradeBook gradeBook;
    string nameOfCourse;
//    courseName = "C++ Program";
    getline(cin, nameOfCourse);

    gradeBook.displayMessage(nameOfCourse);  //对象名.方法(函数)名调用
}

C++ 面向对象

class 类名{
    // 属性  事物的静态特性
    // 方法 事物的行为
  比如 学生类  属性可以有 name , score  ,age...
}

get/set方法

为什么要有get/set方法?因为面向对象编程中类=的属性要私有化, 这样外界无法访问, 需要提供 get(得到这个属性)/set(修改属性)方法访问这个属性

#include <iostream>
#include <cstring>
using namespace std;
// 类名最好用大驼峰
class GradeBook{
public:
    // get 方法
    string getCourseName(){
        return courseName;
    }
    // set 方法
    void setCourseName(string name){
        courseName = name;
    }
    void displayMessage(string courseName ){
        // 方法名用小驼峰
        cout<<"Welcome to grade book "<< courseName<<endl;
    }

private:
    string courseName = "C++";// 设置带有默认值的属性
};
int main() {
    // 实例化类
    // 类名 对象名
    GradeBook gradeBook;
    string name1 = gradeBook.getCourseName();
    cout<< "name1 = " << name1 << endl;

    gradeBook.setCourseName("Java");
    string name2 = gradeBook.getCourseName();
    cout<< "name2 = " << name2 << endl;

}

定义学生类, 属性有一个学生姓名, 一个学习方法, 按照上面模式进行编写

相关文章

网友评论

      本文标题:DongqianxiaoC++ day01

      本文链接:https://www.haomeiwen.com/subject/ifhmsltx.html