obj文件

C语言结构体变量私有化

匿名 (未验证) 提交于 2019-12-03 00:38:01
操作系统 : CentOS7.3.1611_x64 gcc版本 :4.8.5 问题描述 C语言结构体定义中的变量默认是公有(Public)属性,如果实现成员变量的私有(Private)化? 解决方案 将结构体的定义放入源码件中实现,头文件只放声明。 比如有如下结构体(obj.h文件中定义): struct Obj { int id; char * name; }; typedef struct Obj Obj; 并定义如下变量: Obj *o; 正常情况下,可以通过如下代码正常访问结构体中的变量: printf( " id : %d\n " ,o->id); 如果将结构体的定义放入源文件中,上述代码将会报如下错误: error: dereferencing pointer to incomplete type printf( " id : %d\n " ,o-> id ); 如需外部访问,可通过添加相关接口实现,比如: int get_obj_id( const Obj* o) { int ret = 0 ; if (o) { ret = o.id; } return ret; } 完整示例代码如下: https://github.com/mike-zhang/cppExamples/tree/master/dataTypeOpt/CStructPrivateTest1 好

面向对象练习题

匿名 (未验证) 提交于 2019-12-03 00:34:01
题目与解答 1-10 #1.面向过程编程与面向对象编程的区别与应用场景? # 面向过程编程可扩展性较弱,适合写部署脚本,算法编写 # 面向对象编程可扩展性较强,把事物分解为不同对象,适合编写复杂程序开发 #2. 类和对象在内存中是如何保存的。 # 类和对象的属性在内存中是通过dict形式保存的,python创建对象时,会在内存中开辟一块空间 #3. 什么是绑定到对象的方法、绑定到类的方法、解除绑定的函数、如何定义,如何调用,给谁用?有什么特性 # obj.func 绑定到对象的方法,把obj自动传给self # @classmethod绑定到类的方法,由类来调用把类名自动传给cls # @staticmethod非绑定方法,不绑定类与对象,类与对象都可以调用。按正常形式传参 # 4.使用实例进行 获取、设置、删除 数据, 分别会触发类的什么私有方法 class A(object): def __setitem__(self, key, value): print(‘setitem‘) self.__dict__[key] = value def __getitem__(self, item): print(‘getitem‘) return self.__dict__.get(item) def __delitem__(self, key): print(‘delitem‘)

Bitcoin序列化库使用

匿名 (未验证) 提交于 2019-12-03 00:21:02
Bitcoin序列化库使用 Bitcoin序列化功能主要实现在 serialize.h 文件,整个代码主要是围绕 stream 和参与序列化反序列化的类型 T 展开。 stream这个模板形参表达具有 read(char**, size_t) 和 write(char**, size_t) 方法的对象, 类似Golang 的io.reader ,io.writer。 简单的使用例子: #include <serialize.h> #include <streams.h> #include <hash.h> #include <test/test_bitcoin.h> #include <stdint.h> #include <memory> #include <boost/test/unit_test.hpp> BOOST_FIXTURE_TEST_SUITE(serialize_tests, BasicTestingSetup) struct student { std::string name; double midterm, final ; std::vector<double> homework; ADD_SERIALIZE_METHODS; template <typename Stream, typename Operation> inline void

CamBuilder(3D园区搭建)主界面功能介绍

匿名 (未验证) 提交于 2019-12-03 00:15:02
CamBuilder是面向普通开发者都能使用的园区级别 3D可视化 搭建工具,同学们可以自主自由开发3D可视化应用,无需大规模专业团队,低门槛易上手,一起来了解一下吧~ CamBuilder下载地址 https://www.thingjs.com/ 特性说明 客户端主界面展示如下: 主界面由四部分组成: 标题栏:左侧展示客户端的全称及版本号,右侧为窗口操作按钮。 菜单栏:包含我的场景、场景集市、DIY模型库、主菜单按钮等。 功能展示栏:主要由三部分构成,分别为搜索排序工具栏、场景列表区和场景信息展示区。 底部信息栏:展示用户未同步场景、模型、贴图数量。 标题栏 在标题栏中,左侧展示了客户端的Logo、全称和版本号,右侧为窗口的操作按钮,可放大、缩小、关闭客户端。点击 可更换客户端的皮肤,系统默认为【简约白】皮肤。现有两种皮肤展示如下: 菜单栏 在菜单栏中,主要分为两个部分,左侧是三个主页签,我的场景、场景集市、DIY模型库,右侧为四个功能按钮。 菜单栏左侧主页签对应客户端主程序的三大模块: 我的场景:储存场景,包括了用户自己搭建的场景以及复制、购买的场景。 场景集市:场景买卖平台,用户可将自己搭建的场景在此售出,也可购买他人出售的场景。 DIY模型库:提供创建场景所需的模型、贴图等,也可以自定义上传用其它软件制作的模型。 菜单栏右侧有四个功能按钮,功能描述见下表: 序号 功能图标

【python】python基础

你。 提交于 2019-12-03 00:15:02
/*--> */ /*--> */ /*--> */ /*--> */ /*--> */ /*--> */ 程序输入与输出 ¶ 打印字符串 ¶ In [1]: myString = "hello word" print myString hello word 格式化字符串 ¶ In [7]: print "%s is number %d!"%("python",1) print "{} is number {}!".format("python",2) #python官方推荐 python is number 1! python is number 2! 重定向 ¶ In [12]: import sys print >> sys.stderr,"write to standard error" logfile = open('./deleteme.txt','wb') print >> logfile, "write to deleteme.txt" logfile.close() write to standard error 交互式输入 ¶ In [15]: username = raw_input('enter your name:') enter your name:11 In [16]: username #输出值都是字符串 Out[16]: '11'

obj + mtl 格式说明

匿名 (未验证) 提交于 2019-12-03 00:08:02
OBJ(或 .OBJ)是一种开放的几何定义文件格式,最初由Wavefront Technologies公司开发,用以描述其Advanced Visualizer动画包。该格式已被其他3D图形应用供应商采纳,是一种被绝大多数普遍公认的格式。 OBJ文件格式为简单数据格式,它仅表现3D几何体,即顶点的位置、以顶点列表方式定义每个多边形的顶点、法向量和面的UV坐标,以及纹理顶点。顶点默认以逆时针方向存储,不必显式声明法向。 1. 文件格式 注释行以#号起首 2. 面的定义 面通过顶点列表、纹理及法向的索引来定义。定义多边形(诸如四边形)时可超过三张顶点/纹理/法向索引。OBJ文件也支持自由曲面,如NURB(非均匀有理B样条)。 有多种方式定义一个面,然而每行面定义语句都以f起首。 2.1 顶点 合法的顶点索引从1开始,对应于预先定义的顶点列表中相应的顶点元素。每个面可以包含三个以上元素。 2.2 顶点/纹理坐标 可选地,纹理坐标索引可以用来指定面的纹理坐标。在定义一个面时,如需为顶点索引添加纹理坐标索引,须在顶点索引之后附上纹理坐标索引,并用/号分隔。注意/号之前或之后都不允许有空格。合法的纹理坐标索引从1开始,对应于预先定义的纹理坐标列表中相应的元素。每个面可以包含三个以上元素。 2.3 顶点/纹理坐标/法向 可选地,法向索引可以用来指定顶点的法向量。在定义一个面时

CRM开发报名流程

匿名 (未验证) 提交于 2019-12-02 23:57:01
在客户信息里点击报名竟如报名,销售选择好报名的大致信息点击下一步会生成一个链接给客户填写,如果改用户报名已存在也会生成一条链接 在crm/urls.py文件中设置报名url url ( r '^customer/(\d+)/enrollment/$' , views . enrollment , name = "enrollment" 在crm/views.py文件中创建enrollment函数 因为在报名页面里面的数据需要从报名表里面得出来,所以得先获取表单里面的值,所以新建crm/forms.py from django . forms import ModelForm from PerfectCRM . Perfectcrm . crm import models class EnrollmentForm ( ModelForm ): def __new__ ( cls ,* args ,** kwargs ): #super(CustomerForm,self).__new__(*args,**kwargs) # print("request.POST:",request.POST) #表名,表对象值 for field_name , field_obj in cls . base_fields . items (): #print(field_name,dir(field

常用VBS对象

匿名 (未验证) 提交于 2019-12-02 23:57:01
Set Obj_Shell = CreateObject("Wscript.shell") '读写删注册表,打开指定程序 Set Obj_WinHttp = Createobject("WinHttp.WinHttpRequest.5.1")'网页POST,GET Set Obj_DictionAry = CreateObject("Scripting.DictionAry")'字典 Set Obj_FilEsystem = CreateObject("Scripting.FileSystemObject")'文件相关对象,磁盘 Set Obj_Adodb = CreateObject("adodb.stream")'可以用于GET,POST下载网页图片等数据 Set Obj_ScriptControl= CreateObject("MSScriptControl.ScriptControl") '可以运行JAvaScript代码 Set Obj_RegExp = New RegExp ‘正则表达式 ’============================================================================== Obj_Shell.RUn 按WIn+R可以执行的所有功能,短整形运行式样,布尔值等待程序被关闭 运行式样:0

Django-7

…衆ロ難τιáo~ 提交于 2019-12-02 23:55:44
目录 Django-7 Cookie 由来 简介 原理 查看cookie Django中操作cookie 获取cookie 设置cookie 删除cookie 使用cookie实现用户登录认证装饰器功能 session 由来 设置session 获取session 删除session session设置超时时间 session版登录验证装饰器 Django中间件 什么是中间件 中间件的存放位置 中间件中可以自定义的五个方法 中间件的执行过程 有了中间件的Django请求流程图 跨站请求伪造(csrf) 钓鱼网站 解决策略 CsrfViewMiddleware 局部使用csrfmiddleware中间件 Django-7 Cookie 由来 ​ 由于http协议是无状态的,每次请求都是独立的,当用户访问浏览器网页时,并不会记录登录状态,所以,对服务器来说,你的每次请求都是全新的。 简介 ​ 那么,为了保存用户的登录状态以及信息,就有了cookie,cookie具体指的是一段小信息,他是服务器大宋出来存储在浏览器上的一组组键值对,下次访问服务器时浏览器会自动携带这些键值对,以便服务器提取有用的信息。 原理 ​ 由服务器产生内容,浏览器收到请求后保存在本地,当浏览器再次访问时,浏览器会自动带上cookie,这样服务器就能通过cookie的内容判断当前用户信息了。 查看cookie ​

照片的批量上传与回显删除

匿名 (未验证) 提交于 2019-12-02 23:47:01
前端页面 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <!--<meta http-equiv="Content-Type"; content="multipart/form-data; charset=utf-8"/>--> <title>多图片上传</title> <script type="text/javascript" src="${ctxPath}/static/js/jquery.min.js?v=2.1.4"></script> <style type="text/css"> *{ margin: 0; padding: 0; } #upBox{ text-align: center; width:500px; padding: 20px; border: 1px solid #666; margin: auto; margin-top: 150px; margin-bottom: 200px; position: relative; border-radius: 10px; } #inputBox{ width: 100%; height: 40px; border: 1px solid cornflowerblue; color: cornflowerblue; border-radius: 20px