static关键字
静态方法的调用:类名::函数名 (Java是类名.函数名)
#include <iostream>
#include <cstring>
class A{
public:
static void f(){
std::cout << "A" << std::endl;
}
};
class B : public A{
public:
static void f(){
std::cout << "B" << std::endl;
}
};
int main(int argc, char *argv[])
{
A::f();
B::f();
A *a = new A();
B *b = new B();
a->f();
b->f();
b = (B*)a;
b->f();
return 0;
}
结果:A B A B B
一维动态数组
int main(int argc, char* argv[])
{
int n;
std::cin >> n;
int *x = new int[n];
memset(x,0,n*sizeof(x));
for(int i=0; i<n; ++i){
std::cout << x[i] << std::endl;
}
int y[5];
memset(y,0,5*sizeof(x));
for(int i=0; i<5; ++i){
std::cout << y[i] << std::endl;
}
char buffer[] = "string";
memset(buffer,'*',strlen(buffer));
std::cout << buffer << std::endl;
return 0;
}
memset最适合初始化字符数组,若初始化数值,最多只能到0,否则容易造成错误。