c++builder 中关于#pragma使用整理

本文详细介绍了C++Builder中的#pragma指令,包括#pragma alignment、#pragma anon_struct、#pragma argsused等17种用法,帮助开发者更好地理解和使用这些编译器指令进行代码优化和管理。
c++builder 中关于#pragma使用

关于#pragma的预编译,在不同编辑器内都有所不同,这里只针对C++Builder的做一些记录。

1.#pragma alignment(这个我在网上找到的,不是很理解,暂做记录)

        alignment pragma用于显示一条当前内存对齐(alignment)和枚举(enum)字节大小的消息。例如:
        W8035: The alignment is 8 bytes, the enum size is 4 bytes
        该消息必须在打开编译器选项”show general messages”或编译器开关”-wmsg”后才能显示。

2.#pragma anon_struct

        #pragma anon_struct on 允许编译类中内嵌的匿名结构
        #pragma anon_struct off 禁止编译类中内嵌的匿名结构

        例如:

#pragma anon_struct on
struct S
{
int i;
struct // Embedded anonymous struct
{
int j ;
float x ;
};
S() { i = 1; }
};
#pragma anon_struct off

3.#pragma argsused

argsused pragma通常在定义一个函数前使用,用于屏蔽函数参数未使用的警告。例如:

#pragma argsused

int func(int a,int b)

{

++b;

return b;

}

如果不使用该pragma,编译器就会报类似”函数参数没有用到”的警告消息。

4.#pragma checkoption optionstring

checkoption pragma检查optionstring中包含的选项是否已设置。例如:

#pragma checkoption -a4 -b

如果没有设置,显示一个错误:E2471: pragma check

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值