我在自定义类中运行函数时遇到问题。这是我的代码:
ROBOTSTRUCTURE.H
CREATE PROCEDURE yourProcedureName
@RegionCode nvarchar(2)
AS
--your select
ORDER BY
CASE CountryRegionCode
WHEN @RegionCode THEN 1
ELSE 2
END,
Name
ROBOTSTRUCTURE.CPP
#pragma once
#include "math.h"
#include <fstream>
#include <string>
#include <thread>
#include <chrono>
#include <ctime>
#include <vector>
#include <sstream>
#include <fstream>
using namespace std;
using namespace std::chrono;
class RobotStructure
{
bool faceTrackingEnabled;
public:
RobotStructure();
~RobotStructure();
bool testFunction(string input);
MAIN
#include "RobotStructure.h"
RobotStructure::RobotStructure()
{
faceTrackingEnabled = true;
}
RobotStructure::~RobotStructure()
{
}
bool RobotStructure::testFunction(string input)
{
cout << input << endl; //THIS DOES NOT WORK, When using debugger shows that the entire class "Robot Structure" as unable to read memory
return true;
}
如果在main中设置断点,我的类正确初始化,一切都很好。一旦打电话给&#34;测试功能&#34;该类在测试函数中失去记忆。
在返回0之前返回main;这个班也是内存不足。好像指针以某种方式被删除。有人可以解释一下发生了什么,我做了什么是错的?
答案 0 :(得分:0)
您的testFunction
不使用任何班级成员。如果在启用优化的情况下编译此代码(&#34;发布&#34; VisualStudio中的配置,gcc上为-O2
),编译器可能会渲染一些变量(如this
)&#34; undebuggable& #34;