主题:用g++编译的c++程序怎样引用外部类的static 变量? -- 金口玉言
用g++编译的c++程序怎样引用外部类的static 变量?
不好意思,头一次用g++,在VC下可以编译的程序,在g++下却不行。
主程序:
#include <stdio.h>
#include <SSS.h>
int main()
{
printf("hello\n");
printf("%d",SSS::T);
}
外部类的SSS.h文件
#include <vector>
class SSS
{
public:
SSS(void);
static float S,K,r,h,b,p;
static int T;
static void reset();
public:
~SSS(void);
};
外部类SSS.cpp文件:
#include "SSS.h"
float SSS::K=100;
float SSS::S=105;
float SSS::b=-0.03;
float SSS::r=0.03;
float SSS::h=0.05;
int SSS::T=3;
float SSS::p=(h-r)/(h-b);
SSS::SSS(void)
{
}
void SSS::reset(void)
{
::std::vector<int> v;
v.reserve(10);
v.push_back(100);
}
SSS::~SSS(void)
{
}
编译的时候出错如下:
stl@ubuntu:~/hhh$ g++ -o hh Hello.cpp SSS.cpp
Hello.cpp:2:17: error: SSS.h: No such file or directory
Hello.cpp: In function ‘int main()’:
Hello.cpp:7: 错误: ‘SSS’ 未声明
Hello.cpp:7: 错误: ‘T’ 在此作用域中尚未声明
请各位大大指教怎么回事阿??非常感谢!!
- 相关回复 上下关系8
🙂用g++编译的c++程序怎样引用外部类的static 变量?
🙂如果不想改源代码,还有一个办法, 请尽量 字92 2007-07-24 20:40:49
🙂应该是有的 金口玉言 字145 2007-07-22 14:40:36
🙂g++ 还有汉化版?:) 1 老成都 字0 2007-07-22 12:35:14
🙂应该有的。 金口玉言 字84 2007-07-22 14:42:01
🙂来两个难点的,这问题一出来就被大家消灭了:) 1 老成都 字0 2007-07-22 12:32:38
🙂呵呵,那就以后还请多指教了:) 金口玉言 字0 2007-07-22 14:41:10
🙂提个议... 10年1剑 字154 2007-07-20 01:14:39