C++ 如何使用宏跟踪MFC序列化调用

C++ 如何使用宏跟踪MFC序列化调用,c++,mfc,macros,linker-errors,C++,Mfc,Macros,Linker Errors,我有一个MFC应用程序,它正在向磁盘写入一个庞大的对象层次结构。 为了理解正在编写的内容,我想记录所有对归档的调用您必须在任何一个.cpp文件中定义LogTab::LogIndentCount,如下所示: #include"LogTab.h" //... int LogTab::LogIndentCount = 0; [作为旁注,如果它是一个使用这个类的多线程系统,那么你可以考虑将LogIndentCountsynchronized(线程安全)]作为一个静态变量,必须显式初始化。你是说使用它的

我有一个MFC应用程序,它正在向磁盘写入一个庞大的对象层次结构。
为了理解正在编写的内容,我想记录所有对归档的调用您必须在任何一个.cpp文件中定义
LogTab::LogIndentCount
,如下所示:

#include"LogTab.h"
//...
int LogTab::LogIndentCount = 0;

[作为旁注,如果它是一个使用这个
类的多线程系统,那么你可以考虑将
LogIndentCount
synchronized(线程安全)]

作为一个静态变量,必须显式初始化。

你是说使用它的每个cpp文件?@Hasan,不是。它只是
.cpp
文件中的一个。不要在每个
.cpp
文件中定义,否则会出现多定义链接器错误。欢迎使用stackoverflow。我认为你的答案在这里是对的,但不是很清楚。示例代码、指向另一个问题的链接(此问题是常见问题解答)或更详细的解释都很好。的可能重复项
#include"LogTab.h"
//...
int LogTab::LogIndentCount = 0;