C++ 类内部static指针初始化的问题

class polynomial;
class Term
{
friend polynomial;
private:
float coef;
int exp;
};

class polynomial
{
private:
static Term * termArray;
static int capacity;
static int free;
static int * array;
int start,finish;
};
int polynomial::capacity=100;
int polynomial::array=new int [100];
Term polynomial::termArray=new Term[100];
int polynomial::free=0;

最后会报该声明与类内部的不兼容。求解决

int* polynomial::array=new int [100];
Term* polynomial::termArray=new Term[100];

这两行定义类型的地方应该加 *
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-11-16
int* polynomial::array=new int [100];
Term* polynomial::termArray=new Term[100];

这两句写错了。

c++类里面添加类的静态成员指针变量如何初始化
static Person*p; \/\/这个就是类里面的静态指针变量 };那么,在类外指针的初始化,有两种,要么指向一块内存空间,要么是空指针,初始化可以这样写 Person* Person :: q = new Person; \/\/这个就是类外面初始化。或者 Person* Person :: q=NULL;参看如下代码:include<iostream>using names...

c++中可以对类中私有成员中的静态变量初始化吗?
1.static成员的所有者是类本身和对象,但是多有对象拥有一样的静态成员。从而在定义对象是不能通过构造函数对其进行初始化。2.静态成员不能在类定义里边初始化,只能在class body外初始化。3.静态成员仍然遵循public,private,protected访问准则。4.静态成员函数没有this指针,它不能返回非静态成员,因为除...

求助!C++类 初始化指针成员问题!
account::account(char Name,int Id)\/\/这里只是传递值进来,在这个 构造函数 调用完后,这个值也就释放了,所以即使保存这个值的指针也没用,LZ应该把这个值的地址传进来,如:account::account(char Name,int Id){ name = new char[strlen(Name)+1];strcpy(name,Name);\/*id = new int;*\/ ...

如何解决c或者c++中指针没有初始化的问题
超出范围后就不一样了.这个就像我上面说的如果是char型那么printf函数从指针开始读取1个字节输出,如果是int型那么printf函数从指针开始读取四个字节 a=4在内存中存储的为0x040x000x000x00(intel的cpu应该是这样存储的不同的cpu是不一样的好像地址依次增加)所以当当a在-128~128时printf("%d\\n",a...

C++类的线程函数为什么要加static修饰
因为对于非静态成员函数而言,默认情况下,参数列表中都会有一个this指针,例如fun(自定义参数),实际上编译后就变成这样类型:fun(自定义参数,某个类 * this)。这样编译就会出错,多了一个参数,所以这个函数就不能作为线程函数了。加上static修饰之后,类的成员函数就不会加上默认this了,所以符合...

C++中类对象数组的初始化
1、当你定义了构造函数以后,默认的构造函数就不起作用了。所以你得类里边就没有默认的构造函数,即:没有没有参数的构造函数。所以Student std[5]; 是错误的。2、所有构造函数都是在定义时候就调用,定义以后的调用就不叫初始化了,而是赋值。所以std[i](name[20],num,chinese,maths,english); ...

C++中,指向const变量的指针初始化能用const型对象的地址对其进行初始化...
初始化是创建之初进行的,只能进行一次。如果你先有const型对象,说明已经初始化完毕。所以谈不上用指针进行初始化 如果你是想二次赋值 const int *pic这个指针的定义就会强制禁止你将*pic作为等式的左值 也就是说,不能够利用pic给ic进行赋值操作。如果你一定要进行赋值操作,可以使用强制转换。const_...

c++ const 和指针问题
一、指针常量(比如int *const p)指针本身是常量,一旦初始化不能更改。int a=100,b=200;int *const pa=&a; \/\/定义指针常量时初始化 pa=&b; \/\/错误,不能修改指针常量 pa=b; \/\/可以修改指针常量所指对象的值 二、指向常量的指针(比如const int * p)指针没有什么特别的,只...

c++ 下面的 static data member 有错误,但是不知道怎么改或者该怎样写...
这个类的定义是没有问题的,编译可以通过。类的静态成员变量为该类的所有实例所共享,可以用"类名::静态成员名"访问静态成员。静态成员函数与静态数据成员一样,都是类的内部实现,属于类定义的一部分。静态成员函数不具有this指针

关于C++ String 指针初始化问题
a=&str 是引用传递,简单地说,就是a和str都指向同一个内存地址,于是你现在既可以通过a修改str指向的字符串,也可以通过str修改a指向的字符串 来一个简单的例子 string s="aaa";string *aa=new string;aa=&s;cout<<*aa<<endl;s="bbb";cout<<*aa<<endl;aa="ccc";cout<<s<<endl;输出...

相似回答