1.关于xxx.h.gch
编译的时候切记不要把头文件编译进去,生成的xxx.h.gch文件是一种缓存,其后编译文件时调用头文件便一直是该缓存。
2.关于inline函数的重定义问题
inline.h
1 #pragma once
2
3 inline int add(int a,int b)//如果这里不使用内联函数,将导致重定义问题
4 {
5 return a+b;
6 }
inline.cc
1 #include "inline.h"
testInline.cc
1 #include "inline.h"
2 #include <iostream>
3 using std::cout;
4 using std::endl;
5
6 inline int add(int,int);
7 int main()
8 {
9 cout<<add(3,4)<<endl;
10 return 0;
11 }
3.C++定义的变量所在的内存区
内存区的划分:数据区,代码区,BSS区,堆,栈
#include <stdio.h>
#include <string.h>
#include <iostream>
using std::

本文总结了C++编程中的一些常见细节问题,包括头文件的编译生成的.gch缓存,inline函数的重定义,内存区域划分,以及如何避免在析构函数中对同一对象多次delete,提供了理解和解决这些问题的要点。
最低0.47元/天 解锁文章
17万+

被折叠的 条评论
为什么被折叠?



