C++ gcc4.9没有使用msvc140调用正确的模板函数专用化—它工作正常
我正在实现一个新的boost::archive,我需要对集合进行特殊处理。 因此,我为boost::serialization::stl::save_collection和boost::serialization::load/save_map_collection创建了模板专门化,所有实现都是内联的 使用msvc14,一切正常 对于gcc49,它始终是调用的boost::serialization::stl::save_collection的原始boost实现 boost::serialization::load/save_map_集合与gcc49一起正常工作,并且使用了我的专门化 以下是我的声明:C++ gcc4.9没有使用msvc140调用正确的模板函数专用化—它工作正常,c++,boost,C++,Boost,我正在实现一个新的boost::archive,我需要对集合进行特殊处理。 因此,我为boost::serialization::stl::save_collection和boost::serialization::load/save_map_collection创建了模板专门化,所有实现都是内联的 使用msvc14,一切正常 对于gcc49,它始终是调用的boost::serialization::stl::save_collection的原始boost实现 boost::serializat
# pragma once
#include <boost/config.hpp>
#include <boost/serialization/nvp.hpp>
#include <boost/serialization/serialization.hpp>
#include <boost/serialization/version.hpp>
#include <boost/serialization/collection_size_type.hpp>
#include <boost/serialization/item_version_type.hpp>
namespace boost{
namespace serialization {
namespace stl {
//////////////////////////////////////////////////////////////////////
// implementation of serialization for STL containers
//
template</*class Archive,*/ class Container>
inline void save_collection(
::boost::archive::my_oarchive & ar,
const Container &s,
collection_size_type count)
{
.....
}
template</*class Archive,*/ class Container>
inline void save_collection(::boost::archive::my_oarchive & ar, const Container &s)
{
// record number of elements
collection_size_type count(s.size());
save_collection(ar, s, count);
}
} // namespace stl
} // namespace serialization
} // namespace boost
#pragma一次
#包括
#包括
#包括
#包括
#包括
#包括
名称空间提升{
命名空间序列化{
名称空间stl{
//////////////////////////////////////////////////////////////////////
//STL容器序列化的实现
//
模板
内联无效保存集合(
::boost::archive::my_oarchive&ar,
康斯特集装箱公司,
集合\大小\类型计数)
{
.....
}
模板
内联void save_集合(::boost::archive::my_oarchive&ar,const Container&s)
{
//记录元素的数量
集合大小类型计数(s.size());
保存集合(应收账款、应收账款、计数);
}
}//名称空间stl
}//命名空间序列化
}//名称空间提升
我曾经尝试过include命令并删除过一次#pragma,但仍然没有成功
有什么想法吗?给定的代码不包含任何模板专门化,并且远离给定的代码不包含任何模板专门化,并且远离