日常C++问题汇总
-
内存泄露的前提是进程一直在运行;进程一旦退出,所占用的整个内存都被销毁,都被系统回收,所有内存退出。
-
typeid输出变量类型,typeid(var).name()
std::cout << typeid(std::string).name() << std::endl;
std::cout << typeid(std::int64_t).name() << std::endl;
NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
l
-
类中包含一个类对象,包含的类对象怎样初始化?
在初始化本类对象时,初始化包含的类对象,即在执行本类对象的构造函数时,先执行包含对象的构造函数。 -
C++结构体使用
声明结构体的方式和声明类的方式大致相同,其区别如下:
1) 使用关键字 struct 而不是关键字 class。
2) 尽管结构体可以包含成员函数,但它们很少这样做。所以,通常情况下结构体声明只会声明成员变量。
3) 结构体声明通常不包括 public 或 private 的访问修饰符。
4) 类成员默认情况是私有的,而结构体的成员则默认为 public。程序员通常希望它们保持公开,只需使用默认值即可。
struct TaskStruct{
int id = 0;
bool get_image_flag = false;
};
- queue可以push std::string[12]数组吗?
不行,不是class type,non-class type。