VC++中的__declspec关键字

MSDN

__declspec关键字与static、extern关键字相似,描述指定类别(type)的存储类型。但__declspec用于描述与Microsoft系统相关的存储方式,不属于标准C和C++语言。
语法结构:
__declspec ( _extended-decl-modifier-seq _)
可用的修饰符
extended-decl-modifier:
align( # )
allocate(“ segname “)
appdomain
deprecated
dllimport
dllexport
jitintrinsic
naked
noalias
noinline
noreturn
nothrow
novtable
process
property({get=get_func_name|,put=put_func_name})
restrict
selectany
thread
uuid(“ ComObjectGUID “)
部分修饰符的简要说明:
noreturn
表示函数没有返回值。
函数在控制语句某分支中结束且没有返回值,编译器会给出警告或错误,用 __declspec(noreturn) 可以消除这种警告和错误。对期望返回结果的函数添加noreturn的后果未定义(undefined behavior)。
(是否意味着最好在void函数中使用noreturn,或者不用返回值的函数?)
—-
相关文章:
《__declspec关键字详细用法》
GNU C++的《attribute 详解》