我想处理我的c ++程序中的错误,所以我创建了一些异常类来管理这些错误,但是我想指定程序中哪一行发生了错误.
我将LINE宏传递给我的异常类的构造函数.
例如:
void f(int i){ // LINE A
if(i<0)
throw(OutOfRange("message", __LINE__); // LINE B
}
void main(){
try{
f(-6); // LINE C
}
catch(const OutOfRange& error){
//do something
}
}
Run Code Online (Sandbox Code Playgroud)
在这个例子中,我只能获得LINE B编号,但我想获得LINE A和LINE C编号.
任何想法,在哪里以及如何使用LINE宏?
谢谢.
请举例说明何时使用std::logical_not以及何时使用std::not1!
根据文档,前者是"一元函数对象类",而后者"构造一元函数对象".所以在一天结束时都构造了一个一元函数对象,不是吗?
在我的程序中,我声明了一个初始化的全局变量(作为数组).但它只影响可执行文件的大小,程序的内存使用量不受影响.
我的程序就是这样
char arr[1014*1024*100] = {1};
int _tmain(int argc, _TCHAR* argv[])
{
while (true)
{
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
可执行文件的大小为118MB,但运行程序时的内存使用量仅为0.3MB
有人能为我解释一下吗?