C++杂谈 inline关键字

1.inline
用于把函数指定为内联函数,且该关键字需要与函数定义放在一起,与函数声明放在一起没有效果。

2.内联函数一般只适用于比较精简的小函数,实际上内联函数是通过牺牲空间去换取时间上的效率,如果函数过于庞大会造成大量空间的浪费,所以需要权衡空间和时间上的平衡。内联函数最重要的使用地方是用于类的存取函数

3.内联函数的使用方法
(1)在类中定义的函数不需要加inline修饰,编译器会把它自动化为内联函数

		class Object
		{
			Object();
			int GetAge()	//内联函数
			{
				return m_age;
			}
		private:
			int m_age;
		};

(2)在类外定义需要增加inline修饰

		class Object
		{
			Object();
			int GetAge();
		private:
			int m_age;
		};
		inline int GetAge()	//内联函数
		{
			return m_age;
		}

4.注意事项
(1)inline对于编译器只是一种建议,编译器可以忽略这个建议。例如如果inline修饰的函数过于庞大,编译器往往会忽略这个inline,把这个函数当成普通函数来处理。
(2)使用inline时尽量把修饰的对象定义在头文件中,以确保编译器能“看到”。如果考虑到编程习惯还是想把函数定义放到源文件中也可以这么实现。

	//Object.h
	#pragma once
	void SetName();


       //Object.cpp
	inline void SetName()
	{
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值