{
    分享网正式开通,我们为大家提供免费资源,欢迎大家踊跃投稿!

C++交差调用与C++互相引用的方法

这个项目是一个机器人自动购买耐克鞋系统(也可以说是一个自动抢鞋系统),需要把某网站的一个JS文件内容用C++改写过来。改写需要尽量的保持原貌,并且适应的添加周边方法,所以我才这么犟。

改写建了两个类(其它类就不说了),Document 类和 Window 类,没有继承关系,但是要把 Document 实例装载到 Window 实例中,而且 Document 实例还有某一方法需要通过 Window 指针来访问其某些属性,这就交差了。

通过在网上查找,了解了一些理论,又通过编译报错,一点点修改,最终实现了C++交差调用、C++互相引用,特此记录:

Document.h


#ifndef NIKE_DOCUMENT_H
#define NIKE_DOCUMENT_H
 
class Window; // 这里是重点(一)
 
#incluce <iostream>
#include <cstring>
 
class Document {
 
        Window *m_window;
public:
        Document();
 
        int documentMode();
 
};
 
#endif //NIKE_DOCUMENT_H
 

Document.cpp


#include "Document.h"
#include "Window.h" // 这里是重点(二)
 

Document::Document() {
        // ......
}
 
int Document::documentMode() {
        std::string s = this->m_window->run();
        std::transform(s.begin(), s.end(), s.begin(), ::tolower); // 全部转为小写
        std::string::size_type idx = s.find("msie"); // MSIE
 
        return idx != std::string::npos ? 11 : 0;
}
 

Window.h


#ifndef NIKE_WINDOW_H
#define NIKE_WINDOW_H
 
class Document; // 这里是重点(三)
 
#include <iostream>
#include <cstring>
 
class Window {
        Document m_document;
        std::string userAgent;
 
public:
        Window();
 
        std::string run();
 
};
#endif //NIKE_WINDOW_H
 

Window.cpp


#include "Window.h"
 
Window::Window() {
};
 
std::string Window::run() {
        return userAgent;
}
 

编译(t_Window.cpp是测试入口文件):


   
g++ t_Window.cpp ../src/*.cpp -o t_Window.exe
 

大致就是这么个意思吧,就不按原项目的方法去写了。


资源均来自第三方,谨慎下载,前往第三方网站下载


米微资源分享网 , 版权所有丨本站资源仅限于学习研究,严禁从事商业或者非法活动!丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:C++交差调用与C++互相引用的方法
喜欢 ()分享 (0)