c++中struct与class关键字区别,类的声明与实现分开

前言:所用开发工具:Visual.Studio.2010.简体中文旗舰版

一、struct关键字与class关键字区别:

/**

struct和class关键字区别
    在用struct定义类时,所有成员的默认属性为public
    在用class定义类时,所有成员的默认属性为private
**/
struct AAA
{
    int a;//属性是public,如果是class则是private
};

二、类的声明与类的实现分开

右击项目--》添加---》类。输入类名Myteacher。其余不管,完成。这时出现了两个文件,Myteacher.h与Myteacher.cpp。在Myteacher.h文件中添加声明。在Myteacher.cpp中添加实现。添加一个mainclass.cpp的测试类。.h文件与.cpp文件代码如下:

Myteacher.h中:

#pragma once//只包含一次

//下面两句跟上面一句是一样
/**
#ifndef __MYTEACHER_H_ //ctrl+shift+u 变大写
#define __MYTEACHER_H_
#endif
**/
class MyTeacher
{
private:
    int m_age;
    char m_name[32];

public:
    int getAge();/**{
        return m_age;
    }**/
    void setAge(int age);//{m_age = age;}
};

Myteacher.cpp中:

#include "MyTeacher.h"

int MyTeacher::getAge(){
        return m_age;
    }
void MyTeacher::setAge(int age){m_age = age;}

mainclass.cpp中:

#include "iostream"
using namespace std;

#include "MyTeacher.h"

void main()
{
    MyTeacher t1;
    t1.setAge(36);
    cout<     system("pause");
}

然后可以运行测试了。

c++中struct与class关键字区别,类的声明与实现分开_第1张图片

备注:#pragma once:只包含一次,就是Myteacher.cpp中只会包含Myteacher.h一次。就算多次引入也只是一次。

你可能感兴趣的:(c++)