记录宏函数的定义和使用

定义宏函数

// 宏函数定义
#define MacroFunction(Name, T1, T2)								\
void Name()														\
{																\
	cout << "T1 = " << T1 << "," << " T2 = " << T2 << endl;		\
}																\

最后一行最后空一行,最后的\后面不要有字符空格也不要.

创建函数

MacroFunction(funa, 12, 13);

分号可写可不写.写是为了与普通函数保持一致.第一个参数是函数名字,使用宏函数函数名字可以预定义,也可以不要.但是下面的类成员函数名字必须在类中定义,如果不定义是找不到函数名字的.

类成员函数定义宏函数 

class A
{
public:
	A() {}
	~A() {}
	void ClassFunc();
};

// 宏函数定义类成员函数 
#define MacroClassFunction(Name, T1, T2)						\
void A::Name()													\
{																\
	cout << "T1 = " << T1 << "," << " T2 = " << T2 << endl;		\
}                                                               \

创建函数 

MacroClassFunction(ClassFunc, 15, 14);

主函数


int main()
{
	funa();
	A a;
	a.ClassFunc();
    return 0;
}

全部代码

// ConsoleApplication3.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include 
using namespace std;

class A
{
public:
	A() {}
	~A() {}
	void ClassFunc();
};
// 宏函数定义
#define MacroFunction(Name, T1, T2)								\
void Name()														\
{																\
	cout << "T1 = " << T1 << "," << " T2 = " << T2 << endl;		\
}																\

// 宏函数定义类成员函数 
#define MacroClassFunction(Name, T1, T2)						\
void A::Name()													\
{																\
	cout << "T1 = " << T1 << "," << " T2 = " << T2 << endl;		\
}																\



MacroFunction(funa, 12, 13);
MacroClassFunction(ClassFunc, 15, 14);

int main()
{
	funa();
	A a;
	a.ClassFunc();
    return 0;
}

你可能感兴趣的:(C++知识,linux,C,c++,开发语言)