前言这是一个重要的知识点,需要掌握。仔细体会代码。#include#include#includeusingnamespacestd;/*测试16进制表示*/intmain(){inta1=0xc0;coutbBin(b);coutCbin(c);intcnum=Cbin.to_ulong();cout<
ROS2 细节知识学习
儒雅芝士
ROS2系列机器人c++linux
1.rosidl_generate_interfaces()在ROS2中,rosidl_generate_interfaces是一个关键的构建工具功能。它主要用于从接口定义文件(如.msg消息文件、.srv服务文件和.action动作文件)生成不同编程语言(如C++、Python等)可以使用的接口代码。这些接口是ROS2中节点间通信的基础,确保了数据在不同组件之间能够准确、高效地传递。在构建系统中
C++实现链表
洗艾斯迪恩重度依赖
c++链表
1.单向静态链表constintN=10000;structnode{intid;intdata;intnextid;}nodes[N];nodes[0].nextid=1;//为next指针赋初值for(inti=1;i//定义链表listnode;//为链表赋值for(inti=1;i::iteratorit=node.begin();while(node.size()>1){it++;if(
分解质因数,求最大公约数和最小公倍数
2401_86161528
c++linux
3个c++程序分解质因数,求最大公约数和最小公倍数,方便数学计算1.分解质因数##includeusingnamespacestd;intmain(){while(1){longlongx,c=0,count=2;cout>x;cout=2){while((c!=0||countusingnamespacestd;longlonglcm(longlongx,longlongy);intmain()
python中@staticmethod方法
elie813
python基础
python中@staticmethod方法,类似于C++中的static,方便将外部函数集成到类体中,主要是可以在不实例化类的情况下直接访问该方法,如果你去掉staticmethod,在方法中加self也可以通过实例化访问方法也是可以集成。classTest:def__init__(self,num):self.num=num;defcout_num(self):print(self.num)@
C/C++教程 第十四章 —— MFC控件详解
余识-
C/C++实战入门到精通mfcc++c语言
注意本系列文章已升级、转移至我的自建站点中,本章原文为:MFC控件详解目录注意一、前言二、项目建立三、Comboxbox四、ListBox五、GroupBox六、Picturecontrol七、ScrollBar八、SpinControl九、ProgressControl十、hotkey十一、ListControl十二、TreeControl十三、TabControl一、前言通过前面两章的学习,现
两数相加【力扣:中等难度】
牛哄哄的柯南
代码面试经典案例leetcode链表算法
title:两数相加【力扣:中等难度】tags:LeetCode题目给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字0之外,这两个数都不会以0开头。示例1:输入:l1=[2,4,3],l2=[5,6,4]输出:[7,0,8]解释:342+465=807.示例2:输入:l
C++——内存管理
kiiila
C++c++
目录1.c++内存分布2.c语言中动态内存管理3.c++动态内存管理4.operatornew和operatordelete函数5.new和delete的实现原理6.定位new表达式(了解)7.malloc/free和new/delete的区别8.什么是内存泄漏,内存泄漏的危害1.c++内存分布内核空间用户代码不能读写栈向下增长内存映射段文件映射、动态库、匿名映射堆向上增长数据段或静态区全局数据、
LeetCode 21. 合并两个有序链表 链表合并 Java实现
Lentr0py
LeetCode算法题leetcode链表java算法数据结构
21.合并两个有序链表21.合并两个有序链表题目来源题目分析题目难度题目标签题目限制解题思路思路:核心算法步骤迭代法代码实现代码解读性能分析复杂度结果测试用例扩展讨论优化写法其他实现总结21.合并两个有序链表题目来源21.合并两个有序链表题目分析将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。题目难度难度:简单题目标签标签:链表题目限制两个链表的节点数目
C++异常机制:构建健壮代码的艺术
Main. 24
c++开发语言
1.异常的概念及应用1.1.异常的概念异常处理机制允许程序中独⽴开发的部分能够在运⾏时就出现的问题进⾏通信并做出相应的处理,异常使得我们能够将问题的检测与解决问题的过程分开,程序的⼀部分负责检测问题的出现,然后解决问题的任务传递给程序的另⼀部分,检测环节⽆须知道问题的处理模块的所有细节。C语⾔主要通过错误码的形式处理错误,错误码本质就是对错误信息进⾏分类编号,拿到错误码以还要去查询错误信息,⽐较⿇
Python知识点:如何使用Panda3D进行3D游戏开发
杰哥在此
Python系列python3d开发语言编程面试
使用Panda3D进行3D游戏开发是一个相对复杂但功能强大的过程。Panda3D是一个基于Python和C++的开源引擎,专为3D游戏开发而设计。它支持物理、动画、着色器、碰撞检测等,能够制作高质量的3D游戏。以下是如何使用Panda3D进行3D游戏开发的基本步骤。1.安装Panda3D首先,你需要安装Panda3D。你可以使用以下命令安装:pipinstallpanda3d2.创建一个基本的Pa
leetcode_链表 21.合并两个有序链表
MiyamiKK57
leetcode链表算法
21.合并两个有序链表将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。思路:定义一个哑节点(dummynode),哑节点是一个初始的虚拟节点,它不存储有效值,只是方便操作,定义一个指针current指向哑节点,用于构建新链表。遍历两个链表,使用两个指针p1和p2分别指向list1和list2的头部,并比较p1.val和p2.val,将较小值的节点连接到c
「Py」基础语法篇 之 Python缩进规则
何曾参静谧
「Py」Python程序设计数据库
✨博客主页何曾参静谧的博客(✅关注、点赞、⭐收藏、转发)全部专栏(专栏会有变化,以最新发布为准)「Win」Windows程序设计「IDE」集成开发环境「UG/NX」BlockUI集合「C/C++」C/C++程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「UG/NX」NX定制开发「Py」Python程序设计「Math」探秘数学世界「PK」Pa
Redis 消息队列详解
maply
Redisredis数据库缓存
Redis消息队列详解Redis作为一个高性能的内存数据库,支持多种实现消息队列的方式,主要包括:RedisList(基于列表的队列)RedisPub/Sub(发布/订阅)RedisStream(消息流)RedisSortedSet(延迟队列)不同的方式适用于不同的场景,下面详细讲解各自的实现原理、适用场景以及示例代码。1.基于RedisList的消息队列Redis的List结构(链表)可以用来实
浅谈redis
zhaoyang9999
redisredis数据库java
redis谈谈你对redis的理解非关系数据库他是单线程的:数据放在内存中,单线程操作效率高(多线程会造成CPU的上下文切换)基于内存操作(周期性的把更新的数据写入到磁盘(RDB)或者把修改操作写入追加的文件记录(AOF))五大基本数据类型strng(最常用)list(列表)底层链表可以用来消息订阅set(集合)hash(哈希hsetkeyfieldvalue)map集合更适合对象的存储Zset(
C++vector容器的使用
jax不摆烂
C++入门到精通c++开发语言
目录一、C++中什么是vector容器二、vector的特点三、使用场景四、对vector容器的简单使用1、vector构造函数2、vector赋值操作3、vector容量与元素个数4、vector的插入和删除5、vector数据的存取6、vector容器互换7、预留空间一、C++中什么是vector容器在C++中,vector是一个非常常用的标准模板库(STL)容器,它提供了动态数组的功能。ve
C++随笔记录:区别()和{}创建对象
jax不摆烂
C++入门到精通算法
C++在C++11之前的初始化方式五花八门,所以C++11引入统一初始化语法。初始化值要用圆括号()或者花括号{}括起来,或者放到等号=的右边:不管是基本类型、数组还是复杂容器,都可以用花括号{}来初始化;int x(0); //使用圆括号初始化int y= 0; //使用"="初始化int z{ 0 }; //使用花括号初始化 这里的=运算符可能会让人产生
命令模式 - 命令模式的设计思想
w(゚Д゚)w吓洗宝宝了
C++从0到1命令模式c++
引言在软件开发中,设计模式是解决常见问题的经典解决方案。命令模式(CommandPattern)是行为型设计模式之一,它将请求封装为对象,从而使你可以用不同的请求对客户进行参数化,并且支持请求的排队、记录日志以及撤销操作。本文将详细介绍命令模式的设计思想,并通过C++代码示例帮助读者深入理解。命令模式的定义命令模式的核心思想是将一个请求封装为一个对象,从而使你可以用不同的请求对客户进行参数化。命令
华为OD机试2024年E卷-分苹果[100分]( Java | Python3 | C++ | C语言 | JsNode | Go )实现100%通过率
梅花C
华为OD题库华为od
题目描述A、B两个人把苹果分为两堆,A希望按照他的计算规则等分苹果Q,他的计算规则是按照二进制加法计算,并且不计算进位12+5=9(1100+0101=9),B的计算规则是十进制加法,包括正常进位,B希望在满足A的情况下获取苹果重量最多。输入苹果的数量和每个苹果重量,输出满足A的情况下B获取的苹果总重量。如果无法满足A的要求,输出-1。数据范围1<=总苹果数量<=200001<=每个苹果重量<=1
侯捷 C++ 课程学习笔记:开启 C++ 深度探索之旅
秃头小饼干
jvm开发语言c++
在C++的学习道路上,侯捷老师的课程宛如一座明亮的灯塔,为无数学习者照亮前行的方向。经过一段时间对侯捷C++课程的深入学习,我收获颇丰,在此将自己的学习笔记和感悟分享给大家,希望能对正在学习C++或者准备踏入C++领域的朋友们有所帮助。一、课程初印象初次接触侯捷老师的课程,就被其深入浅出的讲解风格所吸引。老师不仅有着深厚的技术功底,更具备出色的教学能力,能够将复杂的C++知识以通俗易懂的方式呈现出
ROS 实时修改动态参数的方法
jucat
ROS机器人自动驾驶linux
参考HokuyoLaser动态参数设置wikiipa覆盖算法源码背景工作中需要在C++程序运行过程中,根据场景开关costmap2d的障碍物感知图层以及膨胀图层。在yaml启动参数配置中加载障碍物层插件和膨胀层插件,但是关闭它们的更新,大概如下:global_costmap:global_frame:maprobot_base_frame:base_footprint...plugins:-{na
C++实现设计模式---职责链模式 (Chain of Responsibility)
计算机小混子
设计模式c++设计模式责任链模式
职责链模式(ChainofResponsibility)职责链模式是一种行为型设计模式,它允许多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合。这些对象通过形成一条链,沿着这条链传递请求,直到有对象处理它为止。意图通过将请求的发送者与接收者解耦,动态地决定由哪个对象来处理请求。使多个对象有机会处理请求,而不是由固定的对象处理。使用场景请求的处理者不确定:在运行时,可能需要多个对象来
华为OD机试E卷 --连续字母长度--24年OD统一考试(Java & JS & Python & C & C++)
飞码创造者
最新华为OD机试题库2024javapython华为odjavascriptc语言
文章目录题目描述输入描述输出描述用例题目解析JS算法源码Java算法源码python算法源码c算法源码c++算法源码题目描述给定一个字符串,只包含大写字母,求在包含同一字母的子串中,长度第k长的子串的长度,相同字母只取最长的那个子串。输入描述第一行有一个子串(1<长度<=100),只包含大写字母。第二行为k的值输出描述输出连续出现次数第k多的字母的次数。用例输入AAAAHHHBBCDHHHH3输出
(c/c++)——C++和python的异常处理
想要躺平的一枚
C++pythonc语言c++
目录一、C++的异常处理二、python的异常处理——自定义异常一、C++的异常处理C++中选择用throw来抛出异常,catch来捕捉异常和处理try{//可能发生异常的语句//throw异常对象}catch(类型1){//发生类型1异常时的处理代码}catch(类型2){//发生类型2异常时的处理代码}catch(...){//不管什么异常,都在这里统一处理。}throw抛出异常对象,异常对象
ROS VScode 使用笔记
zhanglianzhao
机器人技术基础c++vscode
ROSVScode使用笔记编译快捷方式修改功能包下CMakeList.txt136行和149-151行程序如果C++文件返回的日志信息乱码,可以在程序main中开头添加下面内容在写C++程序时如果不能自动提示,需要在.vscode目录下的c_cpp_properties.json文件中的name下一行添加下面代码编译快捷方式Ctrl+Shift+B,选择第二个的小齿轮,将以下代码替换掉原先内容,保
C++多线程几种方法
yy__xzz
c++多线程
在Windows平台上,C++可以使用多种方法来实现多线程编程。以下是一些常见的方法:1.Win32API线程使用Win32API创建线程,这涉及到`CreateThread`函数。这种方法较为底层,提供了更多的控制,但也需要更多的代码和手动管理。#include //线程函数 DWORDWINAPIThreadFunction(LPVOIDlpParam){ //线程要执行的代码
web前段跨域nginx代理配置
刘正强
nginxcmsWeb
nginx代理配置可参考server部分
server {
listen 80;
server_name localhost;
spring学习笔记
caoyong
spring
一、概述
a>、核心技术 : IOC与AOP
b>、开发为什么需要面向接口而不是实现
接口降低一个组件与整个系统的藕合程度,当该组件不满足系统需求时,可以很容易的将该组件从系统中替换掉,而不会对整个系统产生大的影响
c>、面向接口编口编程的难点在于如何对接口进行初始化,(使用工厂设计模式)
Eclipse打开workspace提示工作空间不可用
0624chenhong
eclipse
做项目的时候,难免会用到整个团队的代码,或者上一任同事创建的workspace,
1.电脑切换账号后,Eclipse打开时,会提示Eclipse对应的目录锁定,无法访问,根据提示,找到对应目录,G:\eclipse\configuration\org.eclipse.osgi\.manager,其中文件.fileTableLock提示被锁定。
解决办法,删掉.fileTableLock文件,重
Javascript 面向对面写法的必要性?
一炮送你回车库
JavaScript
现在Javascript面向对象的方式来写页面很流行,什么纯javascript的mvc框架都出来了:ember
这是javascript层的mvc框架哦,不是j2ee的mvc框架
我想说的是,javascript本来就不是一门面向对象的语言,用它写出来的面向对象的程序,本身就有些别扭,很多人提到js的面向对象首先提的是:复用性。那么我请问你写的js里有多少是可以复用的,用fu
js array对象的迭代方法
换个号韩国红果果
array
1.forEach 该方法接受一个函数作为参数, 对数组中的每个元素
使用该函数 return 语句失效
function square(num) {
print(num, num * num);
}
var nums = [1,2,3,4,5,6,7,8,9,10];
nums.forEach(square);
2.every 该方法接受一个返回值为布尔类型
对Hibernate缓存机制的理解
归来朝歌
session一级缓存对象持久化
在hibernate中session一级缓存机制中,有这么一种情况:
问题描述:我需要new一个对象,对它的几个字段赋值,但是有一些属性并没有进行赋值,然后调用
session.save()方法,在提交事务后,会出现这样的情况:
1:在数据库中有默认属性的字段的值为空
2:既然是持久化对象,为什么在最后对象拿不到默认属性的值?
通过调试后解决方案如下:
对于问题一,如你在数据库里设置了
WebService调用错误合集
darkranger
webservice
Java.Lang.NoClassDefFoundError: Org/Apache/Commons/Discovery/Tools/DiscoverSingleton
调用接口出错,
一个简单的WebService
import org.apache.axis.client.Call;import org.apache.axis.client.Service;
首先必不可
JSP和Servlet的中文乱码处理
aijuans
Java Web
JSP和Servlet的中文乱码处理
前几天学习了JSP和Servlet中有关中文乱码的一些问题,写成了博客,今天进行更新一下。应该是可以解决日常的乱码问题了。现在作以下总结希望对需要的人有所帮助。我也是刚学,所以有不足之处希望谅解。
一、表单提交时出现乱码:
在进行表单提交的时候,经常提交一些中文,自然就避免不了出现中文乱码的情况,对于表单来说有两种提交方式:get和post提交方式。所以
面试经典六问
atongyeye
工作面试
题记:因为我不善沟通,所以在面试中经常碰壁,看了网上太多面试宝典,基本上不太靠谱。只好自己总结,并试着根据最近工作情况完成个人答案。以备不时之需。
以下是人事了解应聘者情况的最典型的六个问题:
1 简单自我介绍
关于这个问题,主要为了弄清两件事,一是了解应聘者的背景,二是应聘者将这些背景信息组织成合适语言的能力。
我的回答:(针对技术面试回答,如果是人事面试,可以就掌
contentResolver.query()参数详解
百合不是茶
androidquery()详解
收藏csdn的博客,介绍的比较详细,新手值得一看 1.获取联系人姓名
一个简单的例子,这个函数获取设备上所有的联系人ID和联系人NAME。
[java]
view plain
copy
public void fetchAllContacts() {
 
ora-00054:resource busy and acquire with nowait specified解决方法
bijian1013
oracle数据库killnowait
当某个数据库用户在数据库中插入、更新、删除一个表的数据,或者增加一个表的主键时或者表的索引时,常常会出现ora-00054:resource busy and acquire with nowait specified这样的错误。主要是因为有事务正在执行(或者事务已经被锁),所有导致执行不成功。
1.下面的语句
web 开发乱码
征客丶
springWeb
以下前端都是 utf-8 字符集编码
一、后台接收
1.1、 get 请求乱码
get 请求中,请求参数在请求头中;
乱码解决方法:
a、通过在web 服务器中配置编码格式:tomcat 中,在 Connector 中添加URIEncoding="UTF-8";
1.2、post 请求乱码
post 请求中,请求参数分两部份,
1.2.1、url?参数,
【Spark十六】: Spark SQL第二部分数据源和注册表的几种方式
bit1129
spark
Spark SQL数据源和表的Schema
case class
apply schema
parquet
json
JSON数据源 准备源数据
{"name":"Jack", "age": 12, "addr":{"city":"beijing&
JVM学习之:调优总结 -Xms -Xmx -Xmn -Xss
BlueSkator
-Xss-Xmn-Xms-Xmx
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:
java -Xmx355
jqGrid 各种参数 详解(转帖)
BreakingBad
jqGrid
jqGrid 各种参数 详解 分类:
源代码分享
个人随笔请勿参考
解决开发问题 2012-05-09 20:29 84282人阅读
评论(22)
收藏
举报
jquery
服务器
parameters
function
ajax
string
读《研磨设计模式》-代码笔记-代理模式-Proxy
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
/*
* 下面
应用升级iOS8中遇到的一些问题
chenhbc
ios8升级iOS8
1、很奇怪的问题,登录界面,有一个判断,如果不存在某个值,则跳转到设置界面,ios8之前的系统都可以正常跳转,iOS8中代码已经执行到下一个界面了,但界面并没有跳转过去,而且这个值如果设置过的话,也是可以正常跳转过去的,这个问题纠结了两天多,之前的判断我是在
-(void)viewWillAppear:(BOOL)animated
中写的,最终的解决办法是把判断写在
-(void
工作流与自组织的关系?
comsci
设计模式工作
目前的工作流系统中的节点及其相互之间的连接是事先根据管理的实际需要而绘制好的,这种固定的模式在实际的运用中会受到很多限制,特别是节点之间的依存关系是固定的,节点的处理不考虑到流程整体的运行情况,细节和整体间的关系是脱节的,那么我们提出一个新的观点,一个流程是否可以通过节点的自组织运动来自动生成呢?这种流程有什么实际意义呢?
这里有篇论文,摘要是:“针对网格中的服务
Oracle11.2新特性之INSERT提示IGNORE_ROW_ON_DUPKEY_INDEX
daizj
oracle
insert提示IGNORE_ROW_ON_DUPKEY_INDEX
转自:http://space.itpub.net/18922393/viewspace-752123
在 insert into tablea ...select * from tableb中,如果存在唯一约束,会导致整个insert操作失败。使用IGNORE_ROW_ON_DUPKEY_INDEX提示,会忽略唯一
二叉树:堆
dieslrae
二叉树
这里说的堆其实是一个完全二叉树,每个节点都不小于自己的子节点,不要跟jvm的堆搞混了.由于是完全二叉树,可以用数组来构建.用数组构建树的规则很简单:
一个节点的父节点下标为: (当前下标 - 1)/2
一个节点的左节点下标为: 当前下标 * 2 + 1
&
C语言学习八结构体
dcj3sjt126com
c
为什么需要结构体,看代码
# include <stdio.h>
struct Student //定义一个学生类型,里面有age, score, sex, 然后可以定义这个类型的变量
{
int age;
float score;
char sex;
}
int main(void)
{
struct Student st = {80, 66.6,
centos安装golang
dcj3sjt126com
centos
#在国内镜像下载二进制包
wget -c http://www.golangtc.com/static/go/go1.4.1.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.4.1.linux-amd64.tar.gz
#把golang的bin目录加入全局环境变量
cat >>/etc/profile<
10.性能优化-监控-MySQL慢查询
frank1234
性能优化MySQL慢查询
1.记录慢查询配置
show variables where variable_name like 'slow%' ; --查看默认日志路径
查询结果:--不用的机器可能不同
slow_query_log_file=/var/lib/mysql/centos-slow.log
修改mysqld配置文件:/usr /my.cnf[一般在/etc/my.cnf,本机在/user/my.cn
Java父类取得子类类名
happyqing
javathis父类子类类名
在继承关系中,不管父类还是子类,这些类里面的this都代表了最终new出来的那个类的实例对象,所以在父类中你可以用this获取到子类的信息!
package com.urthinker.module.test;
import org.junit.Test;
abstract class BaseDao<T> {
public void
Spring3.2新注解@ControllerAdvice
jinnianshilongnian
@Controller
@ControllerAdvice,是spring3.2提供的新注解,从名字上可以看出大体意思是控制器增强。让我们先看看@ControllerAdvice的实现:
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Component
public @interface Co
Java spring mvc多数据源配置
liuxihope
spring
转自:http://www.itpub.net/thread-1906608-1-1.html
1、首先配置两个数据库
<bean id="dataSourceA" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close&quo
第12章 Ajax(下)
onestopweb
Ajax
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
BW / Universe Mappings
blueoxygen
BO
BW Element
OLAP Universe Element
Cube Dimension
Class
Charateristic
A class with dimension and detail objects (Detail objects for key and desription)
Hi
Java开发熟手该当心的11个错误
tomcat_oracle
java多线程工作单元测试
#1、不在属性文件或XML文件中外化配置属性。比如,没有把批处理使用的线程数设置成可在属性文件中配置。你的批处理程序无论在DEV环境中,还是UAT(用户验收
测试)环境中,都可以顺畅无阻地运行,但是一旦部署在PROD 上,把它作为多线程程序处理更大的数据集时,就会抛出IOException,原因可能是JDBC驱动版本不同,也可能是#2中讨论的问题。如果线程数目 可以在属性文件中配置,那么使它成为
推行国产操作系统的优劣
yananay
windowslinux国产操作系统
最近刮起了一股风,就是去“国外货”。从应用程序开始,到基础的系统,数据库,现在已经刮到操作系统了。原因就是“棱镜计划”,使我们终于认识到了国外货的危害,开始重视起了信息安全。操作系统是计算机的灵魂。既然是灵魂,为了信息安全,那我们就自然要使用和推行国货。可是,一味地推行,是否就一定正确呢?
先说说信息安全。其实从很早以来大家就在讨论信息安全。很多年以前,就据传某世界级的网络设备制造商生产的交