• 微信号:Zh-y9213
您当前的位置:爱资源分享网 > > 网站源码 > 教程合集

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

栏目:教程合集时间:2021-08-13 17:23阅读数:73人阅读

这个项目是一个机器人自动购买耐克鞋系统(也可以说是一个自动抢鞋系统),需要把某网站的一个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
 

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


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

本站所有文章、数据、图片均来自互联网,一切版权均归源网站或源作者所有。

如果侵犯了你的权益请来信告知我们删除。邮箱:737597453@qq.com