在Linux下的几行代码,拿到Windows下怎么就出错了? ls的,不是通过定义一个宏来调用一个函数,TIME_BASE_Q 就是Rational的结构体变量,变量成员被初始化为1和1000000而已吧 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 展开后fn( (Rational){1,1000000} )这是什么语法 ?? #define TIME_BASE_Q (Rational){1, TIME_BASE}=============================================这个宏能完成结构体的定义,初始化吗? 这是因为你碰到了C++规范一个没有明确规定的地方,所以编译器对这个“擦边代码”有不同的反映,很正常。作为程序员,不要写这样的含糊的代码,没有实际的必要,又不方便移植,切忌。fn( (Rational){1, TIME_BASE} );//这句话的意思其实是告诉编译器, //我要生成一个匿名的Ratinal类型的变量。 //并且用这个变量作为参数调用fn这个函数。C++的角度来看struct和class关键字唯一的区别就是struct成员默认是public属性。GCC编译器一看Rational是struct定义的,所以"{...}"这种方式初始化一个匿名的Ratinoal类型的对象它也接受。可这并不是标准,不信你用-ansi参数来编译,保证GCC编译不过。可是VC编译器不认这套,但这不是VC的错。因为它不标准。解决方法:typedef struct Rational{ Rational(int x,int y) //加入显式的构造函数 { num=x; den=y; }; int num; ///< numerator int den; ///< denominator} Rational;#define TIME_BASE_Q_VC Rational(1,TIME_BASE) //这样来初始化一个 //某结构(类)的匿名对象 eduyu你太厉害了,对这个问题分析地深入浅出呀,让我受益非浅呀.问题解决了 eduyu,我给你SendMessage了,请注意查收 请问有没有vc实现滚动条上滚动控件+图片的例子 gif图像如何读到内存中呀 砸锅卖铁跪求大家告知 关于原始套接字的问题! 散分: 为了忘却的纪念, 国人当自强.... socket connect() 函数连接超时怎么设置? 有现成的COM动态连接库,如何使用其中的接口? VC/MFC编程如何播放mp3音乐 我刚学VC,想问问怎样在VC中调试我写的C程序? 有没有必要把sizeof()的值计下来? 问了许多人也没解决的声卡编程问题 我想在linux服务机上不断的取信息,然后在windows客户机上不断的取这些信息,怎么实现?
fn( (Rational){1,1000000} )
这是什么语法 ??
=============================================
这个宏能完成结构体的定义,初始化吗?
所以编译器对这个“擦边代码”有不同的反映,很正常。
作为程序员,不要写这样的含糊的代码,没有实际的必要,又不方便移植,切忌。fn( (Rational){1, TIME_BASE} );//这句话的意思其实是告诉编译器,
//我要生成一个匿名的Ratinal类型的变量。
//并且用这个变量作为参数调用fn这个函数。C++的角度来看struct和class关键字唯一的区别就是struct成员默认是public属性。
GCC编译器一看Rational是struct定义的,所以"{...}"这种方式初始化一个匿名的Ratinoal类型的对象它也接受。可这并不是标准,不信你用-ansi参数来编译,保证GCC编译不过。可是VC编译器不认这套,但这不是VC的错。因为它不标准。解决方法:
typedef struct Rational{
Rational(int x,int y) //加入显式的构造函数
{
num=x;
den=y;
};
int num; ///< numerator
int den; ///< denominator
} Rational;
#define TIME_BASE_Q_VC Rational(1,TIME_BASE) //这样来初始化一个
//某结构(类)的匿名对象