主页 > 教程合集 > 网站建设 >

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

时间:2021-02-26 阅读:0

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

C++交差调用与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
 

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

开通特权,即可免费下载全站所有千余TB网络资源,点击 >>> 资源目录 查看所有资源,覆盖音乐、影视、有声书、电子书、漫画、动漫、课程等,不限时间次数,永久免费,点击 >>> 特权详情 了解更多!

余斗余斗
  • 版权声明:原创文章由发表在网站建设分类下,2021-02-26最后更新,转载注明出处。

相关推荐

返回顶部